如果我有一个穿过文件的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。
答案 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;
}