public class Demo {
public static void main(String[] args) {
/**
* 字符型变量初始值是字符
*
* 结论:
*
* 当输出语句中没有拼接“”时,字符型变量被赋值什么就输出什么;
* 当“”前有2个及2个以上的字符型变量时,转化为int类型进行计算后输出;
* 当“”前有1个或者0个字符型变量时,整个输出语句都转化成字符串类型后输出;
*/
char ch1 = 'A';
char ch2 = 'B';
// 初始值是什么就输出什么
System.out.println(ch1); // A
// 先转化为int类型,进行计算
System.out.println(ch1+ ch2); // 131
// 先转化为int类型,进行计算
System.out.println(ch1+ ch2 + ""); // 131
// ""双引号前先转化为int类型,进行计算,""双引号后转化为字符串类型
System.out.println(ch1+ ch2 + "" + 'C'); // 131C
// ""双引号前后都转化为字符串
System.out.println(ch1 + "" + ch2 + 'C'); // ABC
// ""双引号前后都转化为字符串
System.out.println(ch1 + "" + ch2); // AB
// ""双引号后都转化为字符串
System.out.println("" + ch1+ ch2); // AB
/**
* 字符型变量初始值是字符
*
* 结论:
*
* 当输出语句中没有拼接“”时,字符型变量被赋值什么就输出什么;
* 当“”前有2个及2个以上的字符型变量时,转化为int类型进行计算后输出;
* 当“”前有1个或者0个字符型变量时,整个输出语句都转化成字符串类型后输出;
*/
ch1 = 65;
ch2 = 66;
char ch3 = 67;
// 初始值什么就输出什么
System.out.println(ch1); // 65
// ""双引号前先转化为int类型,进行计算后输出
System.out.println(ch1 + ch2 + ""); // 131
// ""双引号前转化为字符类型输出
System.out.println( ch1 + ""); // A
// ""双引号前先转化为int类型,进行计算,""双引号后转化为字符串类型
System.out.println(ch1 + ch2 + "" + ch3); // 131C
// ""双引号前后都转化为字符串
System.out.println(ch3 + "" + ch1 + ch2); // CAB
/**
* 拼接对象是字符串时,结果和字符型变量初始值是字符相同的结果
*
* 结论:
*
* 当输出语句中没有拼接“”时,字符型变量被赋值什么就输出什么;
* 当“”前有2个及2个以上的字符型变量时,转化为int类型进行计算后输出;
* 当“”前有1个或者0个字符型变量时,整个输出语句都转化成字符串类型后输出;
*/
int a = 1, b = 2 ;
String c = "3";
System.out.println(a + b + c ); // 33
System.out.println(c + a + b); // 312
}
}
Java-输出字符型变量时与""双引号拼接问题
最新推荐文章于 2021-12-03 09:32:16 发布