我必须打印此文件“文本”的偶数行,我该怎么做?
public static void main(String[] args) throws FileNotFoundException{
File f =new File("text.txt");
Scanner scanner = new Scanner(f);
while(scanner.hasNextLine()){
System.out.println(scanner.nextLine());
}
}
谢谢。
答案 0 :(得分:2)
这是一种简单的方法来跟踪您所在的线路以及如何判断它是否为偶数。如果它确实是偶数,那么我们打印它。
public static void main(String[] args) throws FileNotFoundException {
File f = new File("text.txt");
Scanner scanner = new Scanner(f);
int counter = 1; //This will tell you which line you are on
while(scanner.hasNextLine()) {
if (counter % 2 == 0) { //This checks if the line number is even
System.out.println(scanner.nextLine());
}
counter++; //This says we just looked at one more line
}
}
答案 1 :(得分:1)
在迭代文件内容时使用行号上的remainder operator %
答案 2 :(得分:0)
你也可以在while循环的每次迭代中使用两个标记,并打印出每个第一个(偶数)一个标记。
虽然使用计数器可能更清楚。
import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;
public class NumberPrinter {
public static void main(String[] args) throws FileNotFoundException{
File f =new File("text.txt");
Scanner scanner = new Scanner(f);
while(scanner.hasNextLine()){
System.out.println(scanner.nextLine());
if (scanner.hasNextLine()) {
scanner.nextLine();
}
}
}
}