1.String foo = “base”; 
2.foo.substring(0,3); 
3.foo.concat(“ket”); 
4.foo += “ball”; 
foo结果是什么,为什么?

解决方案 »

  1.   

    baseballsubstring后foo指向的字符串“base”没变。
    concat后foo指向的字符串“base”没变。
    foo += “ball”后foo指向的字符串变为“baseball”没变。
    所以结果是baseball
      

  2.   

    baseballString是不可变类
    你对 String的对象.任意操作都不会改变原对象的内容,所以只要会改变内容的操作都有个String类型的返回
      

  3.   

    baseballconcat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
    而substring方法也未改变"base"