String数据类型
//String 数据类型的特点/*String类型变量的使用1. String属于引用数据类型,翻译为:字符串2. 声明String类型变量时,使用一对""3. String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+4. 运算的结果仍然是String类型*/class StringTest { public static void main(String[] args) { String s1 = "Hello World!"; System.out.println(s1); String s2 = "a"; String s3 = ""; //char c = '';//编译不通过 // char里边必须要写内容 不能空着 char c = ' ' //这样的话 就能编译通过了 //*********************** int number = 1001; String numberStr = "学号:"; String info = numberStr + number;// +:连接运算 boolean b1 = true; String info1 = info + b1;// +:连接运算 System.out.println(info1); //*********************** //练习1 char c = 'a';//97 A:65 int num = 10; String str = "hello"; System.out.println(c + num + str);//107hello System.out.println(c + str + num);//ahello10 System.out.println(c + (num + str));//a10hello System.out.println((c + num) + str);//107hello System.out.println(str + num + c);//hello10a 注意!!!! 这里str + num + c 的结果为什么是 hello10a呢 因为首先str 和 num 进行运算 然后就是 str + int 类型 结果就是 hello10 然后类型是str 紧接着和后边的 char 类型进行 运算 是连接运算 结果就是 hello10a 他不是 hello107 除非这样写 str + (num + c ) 要按照顺序来运算 //练习2 // 以下哪个代码能输出 * *这种形式 System.out.println("* *"); yes System.out.println('*' + '\t' + '*'); no //93 char + char + char System.out.println('*' + "\t" + '*'); yes char + str + char System.out.println('*' + '\t' + "*"); no //53* char + char + str System.out.println('*' + ('\t' + "*"));yes 解析: 为什么 '*' + '\t' + '*' = 93 因为这三个都是char类型 他会转化为字符集对应的ASCLL码来进行运算 //*********************** //String str1 = 123;//编译不通过 String str1 = 123 + ""; System.out.println(str1);//"123" //int num1 = str1; //int num1 = (int)str1;//"123" int num1 = Integer.parseInt(str1); System.out.println(num1);//123 }}
关于String的两个小练习

