Je lis un livre pour Java que j'essaie d'apprendre et j'ai une question. Je ne comprends pas quelle est la différence entre le type de variable char
et String
. Par exemple, il existe une différence entre int
et short
, les octets de la mémoire et la zone de nombres dont ils disposent.
Mais quelle est la différence entre char
et String
? sauf que char
use (') et "String" (").
PS: C'est mon premier "vrai" langage de programmation. (À l'école, j'ai appris une fausse langue pour la leçon de programmation.)
char
est un caractère. String
est zéro ou plusieurs caractères.
char
est un type primitif. String
est une classe.
char c = 'a';
String s = "Hi!";
Notez les guillemets simples pour char
et les guillemets doubles pour String
.
char
signifie un seul caractère. En Java, c'est UTF-16 caractère .String
peut être considéré comme un tableau de caractères.
Alors, imaginez "Android" chaîne. Il se compose de 'A', 'n', 'd', 'r', 'o', 'i'
et à nouveau 'd'
caractères.
char
est un type primitif en Java et String
est une classe qui encapsule un tableau de chars
.
En termes simples, char
est une lettre, alors que String
est un ensemble de lettres (ou de Word). La distinction entre '
et "
est importante, car 'Test'
est illégal en Java.
char
est un type primitif, String
est une classe
Je vous recommande de lire la documentation du didacticiel Java hébergée sur le site Web d'Oracle dès que vous doutez de quoi que ce soit lié à Java.
Vous pouvez avoir une compréhension claire des concepts en parcourant les tutoriels suivants:
Un caractère contient un seul caractère, tandis qu'une chaîne contient beaucoup de caractères.
char
est un type primitif pouvant contenir un seul caractère.
String
est plutôt un type de référence, donc un objet à part entière. Il peut contenir n'importe quel nombre de caractères .__ (en interne, les objets String
les sauvegardent dans un tableau char
).
Les types primitifs en Java présentent des avantages en termes de vitesse et d’empreinte mémoire. Mais ce ne sont pas de vrais objets, alors vous perdez certaines possibilités. Ils ne peuvent pas être utilisés comme paramètres de type générique, ils ne peuvent pas avoir de méthodes ou de champs, etc.
Cependant, chaque type de primitive Java a un objet complet correspondant, et la conversion entre eux est effectuée automatiquement par le compilateur (c'est ce que l'on appelle la sélection automatique).
Vous pouvez par exemple faire:
int i=12;
Integer l=i;
Le compilateur se charge de convertir la int
en une Integer
.
les caractères n'ont qu'un seul caractère (lettres, chiffres, ...)
char example = 'x';
chaîne peut avoir zéro caractères ou autant que vous le souhaitez
String example = "Here you can have anything";
Char est un alphabet unique où String est une séquence de caractères ..__Car est un type de données primitif, où String est une classe.