Respuestas:
Use comillas simples para char
s literales , comillas dobles para String
s literales , así:
char c = 'a';
String s = "hello";
No se pueden usar de otra manera (como en Python, por ejemplo).
int
en tales contextos. Entonces no tiene por qué ser así char
. Merecen algunos votos negativos ... simplista.
Un char es un solo carácter UTF-16, es decir, una letra, un dígito, un signo de puntuación, una tabulación, un espacio o algo similar.
Un literal char es un carácter único encerrado entre comillas simples como esta
char myCharacter = 'g';
o una secuencia de escape, o incluso una secuencia de escape Unicode:
char a = '\t'; // Escape sequence: tab
char b = '\177' // Escape sequence, octal.
char c = '\u03a9' // Unicode escape sequence.
Vale la pena señalar que las secuencias de escape Unicode se procesan muy temprano durante la compilación y, por lo tanto, el uso de '\ u00A' conducirá a un error del compilador. Para símbolos especiales, es mejor usar secuencias de escape, es decir, '\ n' en lugar de '\ u00A'.
Siendo las comillas dobles para String
, debe utilizar una "secuencia de escape de comillas dobles" ( \"
) dentro de las cadenas donde de otra manera terminaría la cadena.
Por ejemplo:
System.out.println("And then Jim said, \"Who's at the door?\"");
No es necesario escapar de las comillas dobles dentro de las comillas simples.
La siguiente línea es legal en Java:
char doublequote = '"';
Consideremos estas líneas de códigos (Java):
System.out.println("H"+"A"); //HA
System.out.println('H'+'a'); //169
1) La primera línea es la concatenación de H
y A
eso dará como resultado HA
(String literal)
2) En segundo lugar, estamos agregando los valores de dos caracteres que de acuerdo con la tabla ASCII H
= 72 y a
= 97, eso significa que estamos agregando 72+97
como ('H'+'a')
.
3) Consideremos otro caso en el que tendríamos:
System.out.println("A"+'N');//AN
En este caso, estamos tratando con la concatenación de String A
y char N
que dará como resultado AN
.
La comilla simple indica carácter y la comilla doble indica cadena.
char c = 'c';
'c' -----> c es un carácter
String s = "stackoverflow";
"stackoverflow" ------> stackoverflow es una cadena (es decir, colección si caracteres)