数据类型:
1.字符型:
public class DateTest01
{
public static void main(String[] args){
char c='a';
System.out.println(c);
}
}
输出结果为:
a
public class DateTest01
{
public static void main(String[] args){
char c='a';
System.out.println(c);
char x='国';
System.out.println(x);
}
}
输出结果为:
a
国
一个中文字符占两个字节,char类型可以存储中文字符。
错误形式:
char a='abc';
char b="a";
2.转义字符:
public class DataType02
{
public static void main(String[] args){
char c1='a';
System.out.println(c1);
char c2='\n';
System.out.println(c2);
}
}
char c2='\n';
表面上是两个字符,但是编译不报错,因此\n有其他的意义
在Java语言当中,\n具有转义功能,就是换行的意思。
即:
System.out.println()=\n;
同样:
char d='/t';
'/t'为制表符,与空格不同,虽效果相似,但是他们的ASCII值不同。
即tab与空格的ASCII值不同,体现在键盘上不同的按键。
现要求在控制台上面输出'\'字符。
直接:
char e='\';
System.out.println(e);
编译报错;
因为'\'把\后面的 ' 符号转义成没有特殊意义的普通单引号,左边的单引号没有配对的单引号,因此要修改。
即:
char e='\\';
System.out.print(e);
前面的反斜杠吧后面的反斜杠转义成没有特殊意义的斜杠,编译正常。
在控制台上输出单引号:
若同理:
char f=''';
System.out.print(a);
编译错误,第一个单引号与第二个单引号配对,第三个找不到与之配对。
解决方法:
char f='\'';
总结\具有转义的意思,可将特殊意义的符号转义成普通字符输出。
若:
System.out.print('"');
输出双引号,可直接输出。
若输出"Hello World!";双引号为半角。
则
System.out.print(""Hello World!"");
编译报错,因为第一个双引号会与第二个配对,第三个双引号会与第四个配对。
纠正错误则要注意配对。
因此:
System.out.print("\"Hello World\"");
编译成功。
能输出中文的原因:
JDK中自带的native2ascll.exe命令,可以将中文转化成unicode编码形式。
在命令行输入native2ascll,回车然后输入一行文字即可。