java向一数组中随机插入1-100的自然数(无重复)
展开全部
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<i;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<array.length; i++) {
if (array[i]==num) {
flag = false;//遍历这个数组,如果有值等于当前的随机数则设置为false
break;//已经存在了就没必要在继续循环了,break退出
}
}
if (flag) {//flag为true才会进入
array[count] = num;//把当前的随机数添加到数组中
count++;//每添加一个随机数count加1
}
}
//输出数组
for (int j=0; j<array.length; j++) {
System.out.print(array[j] + "\t");
}
}
}
正好闲着,给你写了!
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<array.length; i++) {
if (array[i]==num) {
flag = false;//遍历这个数组,如果有值等于当前的随机数则设置为false
break;//已经存在了就没必要在继续循环了,break退出
}
}
if (flag) {//flag为true才会进入
array[count] = num;//把当前的随机数添加到数组中
count++;//每添加一个随机数count加1
}
}
//输出数组
for (int j=0; j<array.length; j++) {
System.out.print(array[j] + "\t");
}
}
}
正好闲着,给你写了!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用Random
更多追问追答
追问
大哥代码怎么实现呀
追答
Random r = new Random();
int i = r.nextInt(100);//此处生成一个0到99之间的随机数
i++;//现在i为1到100之间的随机数
/*插入到数组中你会吧*/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用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]+" ");
}
}
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]+" ");
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询