java学习笔记--测试字符类型


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
    
        
    }
}