package myJavaNotes;
/**
* 测试字符类型
* @author 康爸爸
* 2020年1月19日22点14分
* */
/*char类型表示在Unicode编码中的字符。
* Unicode编码被设计用来处理各种语言的文字(万国码),占2个字节,可允许有65536个字符
* 范围:0~65535;通常从‘\u0000‘到‘\uFFFF‘之间的十六进制值表示(前缀u表示Unicode)
* */
/**
* 字符串运算符 ‘+‘
*@author 康爸爸
*@date: 2020年1月20日 下午10:14:23
*
*/
public class Char {
public static void main(String[] args) {
//单引号 ‘ ‘ 括起来表示字符
char a = ‘T‘;
char b = ‘商‘;
char c = ‘\u0061‘;//表示字符 a
char 阿 = ‘s‘;//支持char一个汉字类型的变量
System.out.println(c);//c==a
//双引号 " " 括起来表示字符串,但要用String声明
//String就是字符序列
String s = "abc";
System.out.println(s);
//转义字符
System.out.println("=====================");
System.out.println(‘a‘+‘b‘);//遇到 + char类型自动转化为int类型
System.out.println(‘a‘+‘\n‘+‘b‘);// ‘\n‘换行符的值为10
System.out.println("=====================");
System.out.println(""+‘a‘+‘\n‘+‘b‘);//防止char类型转化为int类型,需要在前面加上双引号表示字符串连接符
System.out.println(""+‘a‘+‘\‘‘+‘ ‘+‘"‘);//结果为 a‘ "
System.out.println(""+‘a‘+‘\‘‘+‘ ‘+‘\"‘);//与上面结果一致
System.out.println(""+‘a‘+‘\\‘);//结果为 a\
System.out.println("============================================================");
/*
* 字符串连接符 +
* 当 + 左右两边有一个是字符串时,相加的结果为字符串 如:3+"4" = 34,此时为字符串34
* 当 + 左右两边有一个是字符时,会将字符转为ascII码再与数值相加
* 当 + 左右两边一个是字符,一个是字符串时,结果为字符串
* */
String d = "3";
int e = 4;
int f = 5;
char g =‘a‘;
System.out.println(d+e);//结果为 34
//执行顺序从左向右
System.out.println(d+e+f);//结果为345,d为字符串,d+e的结果为字符串34,再+f也是字符串345
System.out.println(e+f+d);//结果为93,e和f均为数值,e+f结果为十进制数,d为字符串,+d后为字符串93
System.out.println(g+e);//结果为101;字符与数字相加,字符转为ascII码再与数字相加;a的ascII码为97,所以97+4==101
System.out.println(g+d);//a3
System.out.println(g+d+e);//字符串a34
System.out.println(e+d+g);//字符串43a
System.out.println(e+g+d);//先执行e+g,e为十进制4,g为字符a,ascII码为97,所以e+g==101,再+字符串3,结果为1013
}
}
原文:https://www.cnblogs.com/destiny-2015/p/12233669.html