public class wren4255 {
public static void main(String [] args) {
boolean a = true;
boolean b= true;
System.out.print("a==b"+a==b);
}
} //编译不了
class wren4255 {
public static void main(String args[])
{
String a = "cc";
String b = "cc";
System.out.println("a==b"+a==b);
}
} //能编译
a,b是boolean类型不能跟字符串相加吧。
a,b是字符串类型System.out.println("a==b"+a==b);
是"a==bcc"与"cc"作比较
boolean b= true;
System.out.print("a==b"+a==b);
boolean 类型的能够和String类型的相加吗?
这个不能编译是正常现象.
boolean a = true;
boolean b= true;
System.out.print("a==b"+(a==b));
System.out.print("a==b"+a==b);不管a和b是什么类型,这俩个程序都是String+boolean的形式,为什么一个可以编译,一个不行呢?
String+boolean是可以的吧,就像String+int型一样吧,经常用的呀
System.out.print("a==b"+a==b);
a,b是boolean,"a==b"+a是返回字符串,b是boolean,
String 跟boolean 不能作比较??、
第一个程序...
没有()...他就变成..STRING型+BOOLEAN型了...
String型和Boolean型能相加么?
答案是不能....所以...出错了....
而第二个程序...之所以能编译...是因为是string型+string型....
所以是"a+bcc"和"cc"比较....得出的结果是false...
虽然得能编译...但是得出的结果..不是你想要的结果吧..
boolean 与 String 类型不兼容不能相加,把a==b用()括起来就行了。
第二个程序
都是Stirng 类的,就可以进行字符串的连接了。
第一个不能编译不是优先级的问题
String+a为String型的
String型和Boolean型是不能比较的
所以编译是不能通过的
这个跟优先级没关系