仅从循环打印最后一个数字

时间:2013-11-26 18:13:31

标签: java eclipse loops output

如果我有一个穿过文件的while循环并打印数字,我怎么才能将它打到只打印最后一个数字的位置。

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

这是我目前得到的输出。如何将它打印到只打印19

的位置

我怎么能让它工作到数字从1开始而不是0?

目前我的循环如下:

if (math == last){
        System.out.println(Score++);
    }

数学是另一种计算方程式的方法,最后一个是从文件中输入的答案,并且当前只是检查数学是否与输入的答案相匹配以便“评分”问题。

我不能使用数组,try / catch或regex。

1 个答案:

答案 0 :(得分:2)

只需正常读取文件并将每行存储在临时变量中。读者完成阅读后,打印出临时变量。

public class ReaderExample {

    public static void main(String[] args) throws IOException {

        File file = new File("input.txt");
        BufferedReader br = new BufferedReader(new FileReader(file));

        String line = "";
        String copy = "";
        while((line = br.readLine() )!= null){
                copy = line;
        }
        System.out.println(copy);
    }
}

使用扫描仪

同样的原则适用于Scanner

public class ReaderExample {

    public static void main(String[] args) throws IOException {
        Scanner in = new Scanner(new FileReader("input.txt"));

        String line = "";
        while(in.hasNext()){
            line = in.nextLine();
        }
        System.out.println(line);
    }
}

不调用扫描程序

public String getLast(Scanner scanner){
            String line = "";
            while(in.hasNext()){
                line = in.nextLine();
            }
            return line;
}