这是为什么呢?谁可以给我解释下呀?

解决方案 »

  1.   

    a +b  a是字符的话,表连接,
    a +b a是数字的话,表相加,
      

  2.   

    因为你的+号重载的是String里的连结算法,而不是简单的数学计算。
    在这里"1" + "1" = "11" 和 "a" + "b" = "ab" 没什么两样
      

  3.   

    这个也要来csdn问呀?java基础。
      

  4.   

    还有一种可能就是一个是String一个是number
      

  5.   

    字符串连接在js中,使用evel公式,可以计算evel("1+1"),最终为2
      

  6.   

    因为你的+号重载的是String里的连结算法,而不是简单的数学计算。
    在这里"1" + "1" = "11" 和 "a" + "b" = "ab" 没什么两样
      

  7.   

    “1”为字符串,加号是字符串连接符,相当于c语言中的strcat函数,将两个字符串连接起来
      

  8.   

    这就是java神奇的地方了,C语言中的字符串相连得用函数,或者用数组,但是java可以将两个字符串直接相加
      

  9.   

    好好学习基础 ,这个是基础中的基础。呵呵楼主加油
    个人技术博客 http://www.happyalaric.com
      

  10.   

      如果你需要 1+1 = 2 的结果, int a = Integer.parseInt("1")+Integer.parseInt("1");
    那么a的结果就是2了,javascript脚本中做数值相加也需要转成数字类型才能相加,否则加出来的结果就变成字符串相连了。
      

  11.   

    任何类型和字符串相加(+)都相当于调用该对象的toString方法
      

  12.   

    这时候别把"1"当成数字,他是一个字符串,就像
    "a"+"b"
    结果是:"ab"
      

  13.   

    你用的是字符串相加,将其改成Int就好啦
      

  14.   

    测试了下...在js中 eval('1"+"1")还是等于"11"..  就发现在MySQL数据库中操作"1" + "1" = 2...
      

  15.   

    csdn欢乐多,大家还是有好的,哈哈。