String[] a = new String[]{"1","2"},我如果想增加一个"3"到a中,如何增加?

解决方案 »

  1.   

    String[] a = new String[]{"1","2"};
    你这段代码相当于生成一个只包含两个String类型元素的数组对象,如果想加入新的元素,必须生成新的对象,比如
    String[] b = new String[a.length + 1];
    int i;
    for (i = 0; i < a.length; i++) {
        b[i] = a[i];
    }
    b[i] = "3";
      

  2.   

    不能再增加了.
    需要重新new一个
      

  3.   

    append方法不行吗??
    -------------------------To: mqj327371328数组没有append方法
      

  4.   

    楼主的意思是再生成一个新数组 然后用String[] a里的元素和 3 进行排列组合 生成所有组合可能放到那个新数组里去吧
      

  5.   

    在java中数组是定长的,当你声明了数组的大小后数组的长度就不能改变
    在你的程序中,数组的初始化大小为2,a[0]="1";a[1]="2",所以无法产生元素a[2]
    所以"3"自然添加不进去,在java语言中为了解决数组的定长和元素类型一致的问题,产生了集合的概念,你的问题可以使用集合来解决,比如ArrayList或其他的集合类
      

  6.   

    java中的数组一旦创建长度就不能在改变了,所以,(String[] a = new String[]{"1","2"})
    数组a只能存放2个元素。不能在增加元素了。
    如果希望改变数组的长度,就去使用向量,或去使用List
    比如ArrayList。就可以用add()添加元素了。
    append()是StringBuffer上的方法
      

  7.   

    用list或者新建数组都可以解决
      

  8.   

    String[] a = new String[]{"1","2","3"}
      

  9.   

    用ArraryList
     boolean add(E o) 
              将指定的元素追加到此列表的尾部。 
     void add(int index, E element) 
              将指定的元素插入此列表中的指定位置。 
     Object[] toArray() 
              返回一个按照正确的顺序包含此列表中所有元素的数组。 
    <T> T[] 
     toArray(T[] a) 
              返回一个按照正确的顺序包含此列表中所有元素的数组;返回数组的运行时类型就是指定数组的运行时类型。 
      

  10.   

    string 是final定义的,所以你即使添加了也会生成一个新的临时对象
      

  11.   

    new一个数组是只能是指定大小,或者new的时候就初始化