为什么输出3__55,而不是3__10?
是不是因为"__",所以把后面的+5+5当成String来处理?

解决方案 »

  1.   

    不光是后面,前面也一样,和字符串做+操作就自动转换成String类型的了
      

  2.   

    "+"运算符是按照从左往右的顺序计算的,所以在遇到字符串之前的数字是执行求和,遇到字符串之后就执行连接了,
    也就是说
    在System.out.println(3+"__"+5+5);中
    第一个3是数字,由于遇到了"__",那么后面的两个5就成了字符串了
      

  3.   

    只要你里面有一个string类型的,表达式全部会转成string类型的
      

  4.   

    Java中对String对象的操作有很多特殊的地方,值得好好去学习。
      

  5.   

    System.out.println(3+"__"+5+5)//3+"__"+5+5会把5+5转成“5”+“5”字符串,再跟其他字符串连接