import java.util.ArrayList;public class LLK {
ArrayList<int> a=new ArrayList<int>();
int[][] arr=new int[3][2];
    
    public LLK() {
     int c2=0,c=0,m;
     for(int i=0;i<6;i++){
     a.add((String)(i%3));
     }
     for(int i=0;i<3;i++){
     for(int j=0;j<2;j++){
     m=(int)(Math.random()*a.size());
     arr[i][j]=a[m];
     a.remove(m);
     }
     }
    
     for(int i=0;i<3;i++){
     for(int j=0;j<2;j++){
     System.out.print (arr[i][j]+" ");
     c2++;
     if(c2%3==0) System.out.println ();
     }
    
     }
    }
    public static void main(String[] args){
     new LLK();
    }
    
}/*
产生的错误,为什么ArrayList<int>不能用--------------------Configuration: <Default>--------------------
C:\LLK.java:11: <identifier> expected
    ArrayList<int> a=new ArrayList<int>();
                 ^
1 errorProcess completed.*/

解决方案 »

  1.   

    ArrayList <int>   a=new   ArrayList <int> (); a 是 ArrayList <int>类型的,add的参数就只能是int类型的。模版就是怕你写错,结果你还写String的实参。
      

  2.   

    不能用基本类型....换成ArrayList<Integer>就行了结帖把
      

  3.   

    上面没看仔细...说错了,你arraylist里面装的String类型的对象,就是ArrayList<String>
      

  4.   

    ArrayList<Integer> a = new ArrayList<Integer>();泛型...ArrayList里放的是对象.也就是引用.int并不是对象,是JAVA的8大基本类型.
      

  5.   

    我也试了 ArrayList <String>   a=new   ArrayList <Stirng> (); 
    也产生了同样的错误,
    是不是sdk的版本太底了,java sdk 1.5
      

  6.   

    改成
    ArrayList   <String>       a=new       ArrayList   <Stirng>   ();   就要a.add(String.valueOf(m));
    a.reomve(String.valueOf(m));
      

  7.   

    对就是用ArrayList<Integer>
      

  8.   

    1.5的JDK支持这个吧,我只用过用自定义类型的ArrayList
      

  9.   

    这个把 int 包成 Integer 再取 hashcode reference 的工序好象很浪费~ 有没有大大知道是否有更好的方法?