问答详情
源自:3-4 Java中的比较运算符

为什么System.out.println阔号里的值可以直接运算出来,不应该先在前面运算出布尔值再代入阔号吗?

public class HelloWorld{

    public static void main(String[] args) {

int a=16;

double b=9.5;

String str1="hello";

String str2="imooc";

System.out.println("a等于b:" + (a ==  b));

System.out.println("a大于b:" + (a >  b));

System.out.println("a小于等于b:" + (a <=  b));

System.out.println("str1等于str2:" + (str1 ==  str2));

}

}


提问者:慕移动8447653 2017-08-08 12:39

个回答

  • 韩宇直
    2017-08-09 17:29:57
    已采纳

    运算符有优先级,先执行()里的,在第一个system的语句里,应该是先判断出(a==b)为false后,再执行第二个()的语句,通过+和前面的字符连接起来输出。放在前面一个单独语句写和放在里面的一个括号里是一个意思啊。

  • 慕函数9103817
    2017-08-08 12:50:54

    (a==b)和true等价,不必先运算出布尔值再代入。

    我是这么理解的