Java中的单引号和双引号有区别吗?

mwkjh3gx  于 2022-12-28  发布在  Java
关注(0)|答案(4)|浏览(249)

Java中的单引号和双引号有区别吗?

yr9zkbsy

yr9zkbsy1#

对文字char s使用单引号,对文字String s使用双引号,如下所示:

char c = 'a';
String s = "hello";

它们不能以任何其他方式使用(例如,在Python中)。

rbl8hiat

rbl8hiat2#

char是单个UTF-16字符,即字母、数字、标点符号、制表符、空格或类似的字符。
char文本是用单引号括起来的单个字符,如下所示

char myCharacter = 'g';

或者换码序列,甚至是unicode换码序列:

char a = '\t';    // Escape sequence: tab
char b = '\177'   // Escape sequence, octal.
char c = '\u03a9' // Unicode escape sequence.

值得注意的是,Unicode转义序列在编译过程中很早就被处理,因此使用"\u00A"将导致编译器错误。对于特殊符号,最好使用转义序列,即"\n"而不是"\u00A"。
双引号用于String,您必须在字符串中使用"双引号转义序列"(\"),否则它将终止字符串。
例如:

System.out.println("And then Jim said, \"Who's at the door?\"");

单引号内的双引号不必转义。
下面这行代码在Java中是合法的:

char doublequote = '"';
zqdjd7g9

zqdjd7g93#

让我们考虑下面这行代码(Java):

System.out.println("H"+"A"); //HA
System.out.println('H'+'a'); //169

1.第一行是HA的串联,将得到HA(字符串文字)
1.其次,我们将两个字符的值相加,根据ASCII表,H =72和a =97,这意味着我们将72+97相加,就像('H'+'a')一样。
1.让我们考虑另一种情况,在这种情况下我们会:
系统输出打印输入(“A”+'N');//安
在本例中,我们处理的是字符串A和字符N的连接,结果是AN

des4xlb0

des4xlb04#

单引号表示字符,双引号表示字符串。
字符c =“c”;
'c'-----〉c是字符
字符串s=“堆栈溢出”;
“stackoverflow”------〉stackoverflow是一个字符串(即字符的集合)

相关问题