它应该返回一组6个不同的整数。预先感谢您的帮助
ps.s。我是新手,因此,如果我以错误的方式提出问题,我表示歉意。
代码:
package net.javavideotutorials.assignment1;
import java.util.Set;
import java.util.Random;
public class LotteryNumberGenerator {
public static void main( String args[] ) {
Random rand = new Random();
int upperbound = 100;
int int_random = rand.nextInt(upperbound);
Set<Integer> a = new HashSet<Integer>();
if (a.size() <= 6) {
a.add(int_random);
} else {
System.out.println(a);
}
使用循环代替if条件。使用此代码。
IntStream.rangeClosed(1, 6).forEach(i -> a.add(rand.nextInt(upperbound)));
完整代码:
Random rand = new Random();
int upperbound = 100;
int int_random = rand.nextInt(upperbound);
Set<Integer> a = new HashSet<Integer>();
IntStream.rangeClosed(1, 6).forEach(i -> a.add(rand.nextInt(upperbound)));
System.out.println(a);
写这样的东西:-
public class LotteryNumberGenerator {
public static void main( String args[] ) {
Random rand = new Random();
int upperbound = 100;
int int_random = rand.nextInt(upperbound);
Set<Integer> a = new HashSet<Integer>();
for(int i = 1 ; i <= 6 ; i++) {
a.add(int_random);
}
System.out.println(a);
} }