为了账号安全,请及时绑定邮箱和手机立即绑定

如果我想产生11个从88到99的随机整数且相互都不重复,怎么办呢,求大神指点。

如果我想产生11个从88到99的随机整数且相互都不重复,怎么办呢,求大神指点。

正在回答

3 回答

	/**
	HashSet类,是存在于java.util包中的类。同时也被称为集合,该容器中只能存储不重复的对象。
	*/
	 public static void main(String args[]) {
		  HashSet<Integer> hs = new HashSet<Integer>();
		  while (true) {
			  int a = (int)(Math.random() * 100);
			  if(a >= 88 && a <= 99) {
				  hs.add(a);
			  }
			  if (hs.size() == 11) {
				  break;
			  }
		  }
		  System.out.println(hs);
	 }

上面的程序应该可以满足你的要求~。

2 回复 有任何疑惑可以回复我~

的确循环比较之前的数据对大数据来说很耗费资源,这样你可以换一个想法....我在生成随机数的同时,能不能把原先数组里的那个值删除呢?这样生成的数据是不是就不会重复了?

0 回复 有任何疑惑可以回复我~

给你一个思路,首先先产生11个随机数,范围在88-99之间,在产生的同时做循环判断,判断是否和之前产生的数字相同..之后就不用多说了吧..搞清楚逻辑,写起来就好了

0 回复 有任何疑惑可以回复我~
#1

恩言 提问者

有考虑过这种方法,但是如果要产生1到100000000里99999999个不重复的随机整数这样大量的数据又怎么办呢?
2015-08-18 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

如果我想产生11个从88到99的随机整数且相互都不重复,怎么办呢,求大神指点。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信