Java 从文本文件中提取随机值

标签 java random

我发布了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/

相关文章:

node.js - Nodejs生成不包括给定字符的安全随机字符

java - 更改 boolean 数组中的值。选择地方而不是值(value)

C++:在同一秒多次启动的程序中生成唯一字符串

mysql - 如何在 MySQL 中随机连接表?

java - 如何命名一个将单个对象作为输入而另一个将多个对象作为输入的方法?

java - 连接有一个远程数据库

php - PHP7中的随机字符串

没有注释的 spring 中的 Java 对象验证

java - 在子类中实现 Comparable<T>

java - 将字符串解析为时间并插入mysql数据库