请我想调整这个从文件中读取整数的代码。我希望代码能够检测数据集的数量 (n),而不必像下面那样手动输入数字 (4000)双[]高=新双[4000];public class Extracto { public static void main(String[] args) throws IOException { File fil = new File("C:\\Users\\Desktop\\kaycee2.csv"); FileReader inputFil = new FileReader(fil); BufferedReader in = new BufferedReader(inputFil); double[] tall = new double[4000]; String s = in.readLine(); int i = 0; while (s != null) { // Skip empty lines. s = s.trim(); if (s.length() == 0) { continue; } tall[i] = Double.parseDouble(s); // This is line 19. // System.out.println(tall[i]); s = in.readLine(); i++; }我期望调整后的代码能够获取数据长度,而无需手动将其放入,如下面的代码所示,长度为 4000。双[]高=新双[4000];
1 回答
海绵宝宝撒
TA贡献1809条经验 获得超8个赞
使用列表而不是数组。
File fil = new File("C:\\Users\\Desktop\\kaycee2.csv");
FileReader inputFil = new FileReader(fil);
BufferedReader in = new BufferedReader(inputFil);
ArrayList<Double> tall = new ArrayList<>();
while(in.ready()){
String s = in.readLine().trim();
if(!s.isEmpty()){
tall.add(Double.parseDouble(s);
}
}
如果您使用列表,您的代码可以进一步压缩。当读取的字符串不是数字时,还应在事件中添加 try-catch。
添加回答
举报
0/150
提交
取消