第1个回答 2011-04-22
说下我的理解:(不知有没错啊)
首先有1-100之间的100个整数,它们的和是:sum1;
再有,99个不重复的随机整数,求出它们的和:sum2;
然后,嗯,因为那99个数是从1-100中拿出来的,所以sum1-sum2的结果就是没有取出的数了。
第2个回答 2011-04-21
import java.util.Random;
import java.util.Set;
import java.util.TreeSet;
class Palindrome {
public static void main(String args[]) {
Random rand = new Random();
Set<Integer> set = new TreeSet<Integer>();
while( set.size() <= 99){
set.add(rand.nextInt(100 + 1));
}
for(int i = 1; i <= 100; i++){
if(!set.contains(i)){
System.out.println("没有产生的数字是: " + i);
}
}
}
}
---------------------
没有产生的数字是: 3
第3个回答 推荐于2016-09-27
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class TestRandom {
public static void main(String[] args) {
List<Integer> samples = new ArrayList<Integer>();
for (int i = 0; i < 100; i++)
samples.add(i + 1);
Random rnd = new Random();
for (int i = 0; i < 99; i++)
System.out.print(samples.remove(rnd.nextInt(100 - i)) + " ");
System.out.print("The one is " + samples.get(0));
}
}本回答被提问者采纳