Respostas:
Use aspas simples para chars literais , aspas duplas para Strings literais , assim:
char c = 'a';
String s = "hello";
Eles não podem ser usados de outra forma (como em Python, por exemplo).
intem tais contextos. Portanto, não precisa ser assim char. Merece alguns votos negativos ... simplista.
Um char é um único caractere UTF-16, que é uma letra, um dígito, um sinal de pontuação, uma tabulação, um espaço ou algo semelhante.
Um literal de char é um único caractere entre aspas simples como este
char myCharacter = 'g';
ou uma sequência de escape, ou mesmo uma sequência de escape unicode:
char a = '\t'; // Escape sequence: tab
char b = '\177' // Escape sequence, octal.
char c = '\u03a9' // Unicode escape sequence.
É importante notar que as sequências de escape Unicode são processadas muito cedo durante a compilação e, portanto, usar '\ u00A' levará a um erro do compilador. Para símbolos especiais, é melhor usar sequências de escape, ou seja, '\ n' em vez de '\ u00A'.
Sendo aspas duplas String, você deve usar uma "seqüência de escape de aspas duplas" ( \") dentro das strings onde, de outra forma, terminaria a string.
Por exemplo:
System.out.println("And then Jim said, \"Who's at the door?\"");
Não é necessário escapar as aspas duplas entre aspas simples.
A seguinte linha é válida em Java:
char doublequote = '"';
Vamos considerar estas linhas de código (Java):
System.out.println("H"+"A"); //HA
System.out.println('H'+'a'); //169
1) A primeira linha é a concatenação de He Aisso resultará em HA(literal de string)
2) Em segundo lugar, estamos adicionando os valores de dois caracteres que de acordo com a Tabela ASCII H= 72 e a= 97 isso significa que estamos adicionando 72+97como ('H'+'a').
3) Vamos considerar outro caso em que teríamos:
System.out.println("A"+'N');//AN
Neste caso, estamos lidando com a concatenação de String Ae char Nque resultará em AN.
Aspas simples indicam caracteres e aspas duplas indicam string.
char c = 'c';
'c' -----> c é um caractere
String s = "stackoverflow";
"stackoverflow" ------> stackoverflow é uma string (ou seja, coleção de caracteres)