比如这样一串{"1","2","3"}的String数组,我如何做才能去掉数组最后一个元素,得到{"1","2"}这样的数组?初步的设想是先把元素取出来,再把length-1个元素放回去,但这样有点繁琐。Java有提供操作数组截取的现成方法可用吗?

解决方案 »

  1.   


    public static void main(String[] args){
    String[] a = {"a","b","c"};
    String[] b = Arrays.copyOf(a,a.length - 1);
    System.out.println(b);
    }
      

  2.   

    感谢楼上但我的java是1.5的,没有为类型 Arrays 定义方法 copyOf(String[], int)
      

  3.   

    用List简单 String a[]={"a","b","c"};
    List<String> c=new ArrayList<String>(); for(String b:a){
    c.add(b);
    }
    for(String b:c){
    if("b".equals(b)){
    c.remove(b);
    }
    }
    for(String b:c){
    System.out.println(b);
    }
      

  4.   


    String[] a={"1","2","3"};
    String[] b=new String[2];
    for(int i=0;i<a.length-1;i++){
    b[i]=a[i];
    }
    a=b;
      

  5.   

           
            String[] a={"1","2","3"};
            String[] b=new String[a.length-1];
            for(int i=0;i<a.length-1;i++){
                b[i]=a[i];
            }
            a=b;
      

  6.   


    public static void main(String[] args){
    String[] a = {"a","b","c"};
    String[] b = new String[a.length - 1];
    System.arraycopy(a,0,b,0,b.length);
    System.out.println(b);
    }
      

  7.   

    哈哈 找的就是这个答案 谢啦 楼上好像对Java的方法很熟悉嘛 厉害啊