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
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()]); }
如果你能用list,那么就ok了,上面toArray后生成的数组就顺序了
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);
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
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()]);
}
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);