System.out.println(1+1+"1");("1"+1+1);
我就是没整明白为什么 (1+1+"1")得出的结果是21呢?("1"+1+1)这个得出的结果是111呢?
首先,java的+表达式计算是从左往右的
其次,若是两个整形,会求值,若其中之一是String,会拼接,且结果为String
1+1+“1”,先计算1+1,因为两个都是整形,求值=2,然后2+“1”,拼接,所以是
21
而“1”+1+1,先计算“1”+1,因为有String,结果为'11",再“11”+1就是
“111”
了
热门标签: