使用java中的流编写/创建具有3个唯一随机数的int[]的最短方法是什么?

使用java中的流编写/创建具有3个唯一随机数的int[]的最短方法是什么?,java,random,int,Java,Random,Int,我目前正在使用以下代码: Map<Integer, Integer> numbersMap = new HashMap<>(); return IntStream.generate(() -> (int)(10 * Math.random() + 1)) .filter(i -> numbersMap.put(i, i) == null) .limit(3) .to

我目前正在使用以下代码:

Map<Integer, Integer> numbersMap = new HashMap<>();
return IntStream.generate(() -> (int)(10 * Math.random() + 1))
                .filter(i -> numbersMap.put(i, i) == null)
                .limit(3)
                .toArray();
Map numbersMap=newhashmap();
返回IntStream.generate(()->(int)(10*Math.random()+1))
.filter(i->numbersMap.put(i,i)==null)
.限额(3)
.toArray();
例如,我想知道是否有一种不使用HashMap的方法,因为我只使用键

IntStream.generate(() -> (int) (10 * Math.random() + 1))
         .distinct()
         .limit(3)
         .toArray();

酷!不知道在生成()之后可以使用distinct()
ThreadLocalRandom.current().ints(1, 10 + 1)
                           .distinct()
                           .limit(3)
                           .toArray();