这是因为String + Char = String,类似于int + double = double。
尽管其他答案告诉您,但Char + Char的数据为int。
字符串s = 1; //由于类型不匹配而导致的编译错误。
您的工作代码是(String + Char)+ Char。如果您这样做:String +(Char + Char),您将在字符串中得到一个数字。例:
System.out.println("" + ('x' + 'x')); // prints 240System.out.println(("" + 'x') + 'x'); // prints xx - this is the same as leaving out the ( ).


