java向一数组中随机插入1-100的自然数(无重复)
//将其插入进数组,插入的数字不能重复
public static void main(String[] args) {
int n =100;//取值范围终点
int[] array = new int[n];
Random r = new Random(100);
array[0] = 0;
//循环遍历
for(int i =0;i<100;i++){
array[i] = r.nextInt(100)+1;
//array[i] = (int)(Math.random()*100+1);
for(int j=0;j if(array[i] == array[j]){
i--;
break;
}
}
}
for(int i=0;i<100;i++){
//打印遍历
System.out.print(array[i]+" ");
}
}
public class Num {
public static void main(String[] args) {
int min = 1;//取值范围起点
int max = 100;//取值范围终点
int count = 0;//计数
boolean flag = true;//判断该数在数组中是否已经存在
int num;//随机数
int[] array = new int[10];//定义一个长度为10的数组
while (count < 10) {
num = (int)((Math.random()*(max-min+1))+min);
flag = true; //假设数组内还没有这个随机数
for (int i=0; i
flag = false;//遍历这个数组,如果有值等于当前的随机数则设置为false
break;//已经存在了就没必要在继续循环了,break退出
}
}
if (flag) {//flag为true才会进入
array[count] = num;//把当前的随机数添加到数组中
count++;//每添加一个随机数count加1
}
}
//输出数组
for (int j=0; j
}
}
}
正好闲着,给你写了!
用Random
用hashmap吧
public static void main(String[] args) {
int[] no = new int[100];
int n = 0;
HashMap hm = new HashMap();
while(n<100){
int a = (int)(Math.random()*100)+1;
if(null == hm.get(a)){
hm.put(a,a);
no[n] = a;
n++;
}
}
for(int b = 0 ; b<100 ;b++){
System.out.print(b+1+":"+no[b]+" ");
}
}