Java 如何向输出中添加更多值?
下面是我的函数,它假设从“in1.txt”中获取值,并将它们输出到“out1.txt”中,并给出一个说明,说明它们是否为素数 代码:Java 如何向输出中添加更多值?,java,file,arraylist,output,Java,File,Arraylist,Output,下面是我的函数,它假设从“in1.txt”中获取值,并将它们输出到“out1.txt”中,并给出一个说明,说明它们是否为素数 代码: import java.util.Scanner; 导入java.util.ArrayList; 导入java.io.File; 导入java.io.PrintWriter; 公共课任务1 { 公共静态布尔iPrime(int n){ 如果(n我认为在循环之后将每一行添加到列表中的目的是稍后处理包含所有行的列表。如果这是真的,那么您需要在while循环中包含结果。
import java.util.Scanner;
导入java.util.ArrayList;
导入java.io.File;
导入java.io.PrintWriter;
公共课任务1
{
公共静态布尔iPrime(int n){
如果(n我认为在循环之后将每一行添加到列表中的目的是稍后处理包含所有行的列表。如果这是真的,那么您需要在while循环中包含结果。在while循环中添加(行)并关闭它。在for循环中处理之后的所有行
while (input_file.hasNextLine()) {
String line = input_file.nextLine();
result.add(line);
} //close the loop here
假设您不关闭while循环。For循环将只执行一次,因为您的结果。size()为一,在For循环完成后,它将关闭输出流。while(input_file.hasNextLine()){
while(input_file.hasNextLine()) {
String line = input_file.nextLine();
result.add(line);
}
for(int i = 0; i<result.size();i++)
{
String x = result.get(i);
int xx = Integer.parseInt(x);
if(isPrime(xx))
{
out.printf(xx + " is a prime\r\n");
}
else
{
out.printf(xx + " is not a prime\r\n");
}
}
out.close();
String line=input_file.nextLine();
结果。添加(行);
}
for(int i=0;iconsider not closing the output in the loop:)@zapl+1用于发现主要问题,但是,即使循环中的输出没有关闭,您不认为每次在结果中添加新行时for循环都会重新启动吗?谢谢您,现在我很恼火,我没有看到小的修复xD
while(input_file.hasNextLine()) {
String line = input_file.nextLine();
result.add(line);
}
for(int i = 0; i<result.size();i++)
{
String x = result.get(i);
int xx = Integer.parseInt(x);
if(isPrime(xx))
{
out.printf(xx + " is a prime\r\n");
}
else
{
out.printf(xx + " is not a prime\r\n");
}
}
out.close();