产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。    在线等   各位高手帮帮忙

解决方案 »

  1.   


    import java.util.Random;public class Test {    final int NUM = 100;    public static void main(String[] args) {        int NUM = 100;
            Random random = new Random(System.currentTimeMillis());
            int[] buffer = new int[NUM];
            for (int i = 0; i < buffer.length; i++)
                buffer[i] = i + 1;        int[] array = new int[NUM];
            for (int j = 0; j < array.length;) {
                int temp = random.nextInt(NUM);
                if (buffer[temp] == 0)
                    continue;
                array[j] = buffer[temp];
                buffer[temp] = 0;
                j++;
            }        for (int i = 0; i < array.length; i++) {
                System.out.print(array[i] + " ");
                if (i % 10 == 9)
                    System.out.println();
            }    }}
    output:
    66 74 36 95 45 51 27 19 86 90 
    48 20 56 22 92 40 93 8 55 7 
    65 53 91 47 80 29 69 59 25 99 
    39 71 82 54 96 100 17 78 61 58 
    84 42 18 31 11 41 37 26 50 12 
    5 87 28 3 23 33 94 38 30 97 
    89 10 77 72 49 85 68 73 35 81 
    67 62 52 24 6 34 2 64 83 44 
    43 21 16 32 57 60 98 76 63 46 
    15 88 4 75 14 13 9 70 79 1 
      

  2.   

    public static void main(String[] args) {
            
            List<Integer> list = new ArrayList<Integer>();
            Random rand = new Random();
            int size = 0;
            while(size<100){
                int i = rand.nextInt(100)+1;
                if(!list.contains(i)){
                    list.add(i);
                }
                size = list.size();
            }
            System.out.println(list);
            Integer[] array = (Integer[])list.toArray(new Integer[list.size()]);
        }
      

  3.   

    如果你能用list,那么就ok了,上面toArray后生成的数组就顺序了
      

  4.   


    List<Integer> list = new ArrayList<Integer>();
            Random rand = new Random();
            while(list.size()<100){
                int i = rand.nextInt(100)+1;
                if(!list.contains(i)){
                    list.add(i);
                }
            }
            System.out.println(list);