新手菜鸟报道~奋斗从此开始! 哈哈 我是从老师那得知这个JAVA论坛的!初来乍到,还请老鸟们多多照顾。对了,有个问题昨天困扰我们很久。就是编写一个随机出N个数的程序,怎样使他出的数字不会重复?求教 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Random ran = new Random(); int[] num = new int[3]; int count = 0; boolean temp = false; while(true) { temp = false; for(int i = 0; i < count; i++) { if(ran.nextInt() == num[count]) { temp = true; } } if(count == 3) { break; } if(temp) { continue; } else { count++; } } 如果数据比较多的话,,用Map比较快 Set<Intege> set = new HashSet<Integer>();Random ran = new Random(); while(set.size() < 3){ set.add(ran.nextInt());}这里利用了HashSet内部值的不可重复性。 为什么创建Random对象报错? package com.windex.util;import java.util.ArrayList;import java.util.List;import java.util.Random;public class RandomTest { public static void main(String args[]){ // 创建一个随机数生成器 Random ran = new Random(); // 创建一个List集合 List<Integer> list = new ArrayList<Integer>(); // 定义一个int型变量 int num; // 定义一个逻辑变量 boolean temp = true; // 循环产生100以内的三个不同的随机数 while(temp){ num = ran.nextInt(100); // 判断list中是否已有此随机数 if(list.contains(num)){ temp = true; continue; } list.add(num); if(list.size() == 3){ break; } } // 打印生成的随机数 for(int i: list){ System.out.println(i); } }}楼上用的set集合。我这个是用list集合的contains方法来判断是否用重复的数字,如有重复,重新生成。 public class TestOne { public static void main(String[] args) { int[] arr = new int[10]; for (int i = 0; i < 10; i++) { arr[i] = (int) (Math.random() * 40) + 1; for (int j = 0; j < i; j++) { if (arr[j] == arr[i]) { i--; break; } } } for (int i = 0; i < 10; i++) System.out.print(arr[i] + " "); } } 你的老师为什么不介绍给你javaeye或者infoQ呢.. 批量导出大量数据Excel 如何设置button的长度? 求开源OA 怎样看到头像? 如何改变字体 一个简单条件语句问题,请赐教!在线等待 请问如何在JPanel的上层Container中捕获JPanel中的事件 请问REISE的配置文件在哪里? 多谢各位大人帮忙,菜鸟又有问题了!!急! 求助 垃圾回收器 tomcat静态资源cache的问题
int[] num = new int[3];
int count = 0;
boolean temp = false;
while(true)
{
temp = false;
for(int i = 0; i < count; i++)
{
if(ran.nextInt() == num[count])
{
temp = true;
}
}
if(count == 3)
{
break;
}
if(temp)
{
continue;
}
else
{
count++;
}
}
Random ran = new Random();
while(set.size() < 3){
set.add(ran.nextInt());
}
这里利用了HashSet内部值的不可重复性。
为什么创建Random对象报错?
import java.util.ArrayList;
import java.util.List;
import java.util.Random;public class RandomTest {
public static void main(String args[]){
// 创建一个随机数生成器
Random ran = new Random();
// 创建一个List集合
List<Integer> list = new ArrayList<Integer>();
// 定义一个int型变量
int num;
// 定义一个逻辑变量
boolean temp = true;
// 循环产生100以内的三个不同的随机数
while(temp){
num = ran.nextInt(100);
// 判断list中是否已有此随机数
if(list.contains(num)){
temp = true;
continue;
}
list.add(num);
if(list.size() == 3){
break;
}
}
// 打印生成的随机数
for(int i: list){
System.out.println(i);
}
}
}楼上用的set集合。我这个是用list集合的contains方法来判断是否用重复的数字,如有重复,重新生成。
public class TestOne {
public static void main(String[] args)
{
int[] arr = new int[10];
for (int i = 0; i < 10; i++)
{
arr[i] = (int) (Math.random() * 40) + 1;
for (int j = 0; j < i; j++)
{
if (arr[j] == arr[i])
{
i--;
break;
}
}
}
for (int i = 0; i < 10; i++)
System.out.print(arr[i] + " ");
}
}