我发布了question前面介绍了如何使用 Java 从外部文本文件中提取前八个值。该文本文件包含前 1000 个素数,我编写了一种方法来从所述文本文件中读取数据。
我想知道如何随机提取八个值并将结果应用于另一种方法。
大致如下:
read data from file;
select eight random numbers from file;
apply random numbers to method;
我能够提取前八个数字(正如我之前问题的多个答案所解释的那样),但是我现在想要提取八个随机值 - 我该如何做到这一点?
谢谢。
最佳答案
另一种方法是:
List<Long> numbers = new ArrayList<Long>();
//here you create reader from your file
while ((line = reader.readLine()) != null) {
numbers.add(Long.valueOf(number));
}
Long[] selectedNumbers = new Long[8]();
Random r = new Random();
for(int i = 0; i < selectedNumbers.length; i++){
selectedNumbers[i] = numbers.get(r.nextInt(numbers.Size()));
}
//8 random numbers are in selectedNumbers array
这个解决方案的优点是它比 BalusC 的答案更有效。当然,您可以用 List
替换数组
关于Java 从文本文件中提取随机值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5333326/