我正在尝试读取包含6个元素的文本文件,并将其放入两个数组中。我正在尝试阅读的文本的第一个元素是一个字符串,第二个是双字符。但是,当我致电println
验证输出时,会打印null
和0.0
。
import java.io.*;
import java.util.*;
public class inputFile {
public static void main(String[] args) throws FileNotFoundException{
String [] studNum = new String [25];
double [] grade = new double [25];
File findFile = new File ("//Users//luiserojas//Documents//holaFile.txt");
Scanner inFile = new Scanner (findFile);
int index = 0;
while (inFile.hasNext()){
studNum [index] = inFile.next();
grade [index] = inFile.nextDouble();
index ++;
System.out.println(studNum[index] + grade[index]);
}
}
}
答案 0 :(得分:4)
在打印项目之前,您正在递增index
,因此您尝试打印尚未添加的项目,这些项目的默认构造值为null
,而0.0d
数组已填充当他们被创造时。只需重新安排以下这样的行就可以了:
System.out.println(studNum[index] + grade[index]);
index ++;
答案 1 :(得分:1)
在打印值之前,您正在递增index
,尚未存储任何内容。您需要在index++
println()
答案 2 :(得分:1)
你在索引递增后打印值,所以默认值是dsiplaying。所以首先打印和下一个增量索引就像这样。
while (inFile.hasNext()){
studNum [index] = inFile.next();
grade [index] = inFile.nextDouble();
System.out.println(studNum[index] + grade[index]);
index ++;
}