展开全部
String就是字符串类型
第一 char相加的结果是int类型,不能赋值给String
第二32313133353236313431303231363533e4b893e5b19e31333335303533 A+B的结果是int类型,再加上String,请应用int+String的规则
第三String+char+char,请应用char+String的规则package org.xyz;
public class Test{
public static void main(String[] args) {
String V = "与";
char A = '男';
char B = '女';
//String s = A + B;//错误 A+B的结果是int,int不能赋值给String
int i = A + B;//正确,在java中char和byte是可以转换为十进制的 A+B的结果是int类型的
System.out.println(i);
String sum2 = i + V;//正确 字符串可以跟任意的基本类型相加 下面有证明
System.out.println(sum2);
String sum = A + B + V;//A+B的结果是int类型的,然后再加V A+B是char+char结果是int,字符串可以跟任意的基本类型相加
System.out.println(sum);
//===================String begin================================================================================
//八种基本类型String都可以跟它们进行相加,没有任何问题
boolean boo = true;
sum2 = boo + V;
double d = 10.0;
sum2 = d + V;
float f = 10.0f;
sum2 = f + V;
byte b = 'A';
sum2 = b + V;
//char
sum2 = A + V;
short sr = 10;
sum2 = sr + V;
long l = 10;
sum2 = l + V;
int i10 = 10;
sum2 = i10 + V;
//===================String end================================================================================
}
}
字符串跟基本类型相加的结果package org.xyz;
/**
* 除了byte是转换称ACII码的值之后再跟字符串相加其他没有任何例外
*
*/
public class Test{
public static void main(String[] args) {
String str = "中";
String str2 = "";
boolean bl = true;
str2 = "";
str2 = bl + str;
System.out.println(str2);//true中
float f = 10.0f;
str2 = "";
str2 = f + str;
System.out.println(str2);//10.0中
double d = 10.0;
str2 = "";
str2 = d + str;
System.out.println(str2);//10.0中
int i = 10;
str2 = "";
str2 = i + str;
System.out.println(str2);//10中
short s = 10;
str2 = "";
str2 = s + str;
System.out.println(str2);//10中
byte b = 'c';
str2 = "";
str2 = b + str;
System.out.println(str2);//99中
char c = 'c';
str2 = "";
str2 = c + str;
System.out.println(str2);//c中
long l = 10;
str2 = "";
str2 = l + str;
System.out.println(str2);//10中
}
}
基本类型相加的规律
package org.xyz;
/**
*
* 任意基本类型都是可以相加了,除了跟boolean,boolean跟任何基本类型都不能相加,包括自身
* 可以相加的基本类型相加之後的结果一定是int float long double类型(有short参与并且另一个参数不大与short类型的结果都是int)
*/
public class Test{
public static void main(String[] args) {
char c = 'c';
byte b = 'b';
int i = 1;
long l = 10;
float f = 10.0f;
double d = 10.0;
short s = 10;
boolean bl = true;
//===================char begin==========================================
//char不可以跟boolean相加
i = c + c;//char + char = int
i = c + b;
i = c + i;
f = c + f;
d = c + d;
i = c + s;
l = c + l;
//i = c + bl;
//===================char end==========================================
//===================byte begin==========================================
//char不可以跟boolean相加
i = b + c;//char + char = int
i = b + b;
i = b + i;
f = b + f;
d = b + d;
i = b + s;
l = b + l;
//i = b + bl;
//===================byte end==========================================
//===================int begin==========================================
//char不可以跟boolean相加
i = i + c;//char + char = int
i = i + b;
i = i + i;
f = i + f;
d = i + d;
i = i + s;
l = i + l;
//i = i + bl;
//===================int end==========================================
//===================long begin==========================================
//char不可以跟boolean相加
l = l + c;//char + char = int
l = l + b;
l = l + i;
f = l + f;
d = l + d;
l = l + s;
l = l + l;
//l = l + bl;
//===================long end==========================================
//===================float begin==========================================
//char不可以跟boolean相加
f = f + c;//char + char = int
f = f + b;
f = f + i;
f = f + f;
d = f + d;
f = f + s;
f = f + l;
//f = f + bl;
//===================float end==========================================
//===================double begin==========================================
//char不可以跟boolean相加
d = d + c;//char + char = int
d = d + b;
d = d + i;
d = d + f;
d = d + d;
d = d + s;
d = d + l;
//d = d + bl;
//===================double end==========================================
//===================short begin==========================================
//char不可以跟boolean相加
i = s + c;//char + char = int
i = s + b;
i = s + i;
f = s + f;
d = s + d;
i = s + s;
l = s + l;
//i = s + bl;
//===================short end==========================================
//===================boolean begin==========================================
//i = bl + c;
//i = bl + b;
//i = bl + i;
//f = bl + f;
//d = bl + d;
//i = bl + s;
//l = bl + l;
//i = bl + bl;
//===================boolean end==========================================
}
}