我是新来OOP,但我想创建我的第一个大项目新的数组。 我读过一个txt文件并将值(双打)存储到一个数组中,我将其称为originalArray。该文本有两列和20行。所以,当我想在TXT文件的第一列打印的价值,我只是写:创建一个从旧阵列列
System.out.println(originalArray[0]);
OUTPUT: 1991.00
300.50
498.50 .... et cetera...
我的问题是,我想使用一个for循环(或其他)来创建两个新数组,每个由“原始数组”组成一列。
我认为这将是作为使用一个for循环,像这样一样简单;
double [] newArray = new double [20];
for(int i = 0; i < originalArray.length; i++){
newArray[i] = originalArray[0] //if I want to fill it with the first
//columns data... the second would be newArray2[i] = originalArray[1]
}
但这种填充一个元素的新数组从originalArray列...所以 - 我需要帮忙就怎么写循环,从一个所选列填充所有元素的新的阵列图。
的帮助非常感谢!
祺/沮丧新手
编辑:这是我读txt文件:
String file = "C:\\Users\\komena\\Desktop\\30th-sales.csv";
BufferedReader br = null;
String line = "";
String splitBy = ";";
originalArray = new double [20];
br = new BufferedReader(new FileReader(file));
br.readLine();//skip the first line to get rid of header…
while ((line = br.readLine()) != null) {
String[] readlineArray = line.split(splitBy);
for (int i = 0; i < readlineArray.length; i++) {
originalArray[i] = Double.parseDouble(readlineArray[i]);
}
整个文本(CSV)文件:
300.50;330.00
489.50;296.50
34.50;399.50
900.00;1890.00
2052.00;568.00
354.00;0.00
399.00;0.00
1299.50;0.00
426.00;259.00
29.50;2300.50
99.50;349.50
2500.50;0.00
358.50;113.00
789.00;239.50
998.00;348.00
16.50;679.00
800.00;723.00
1899.50;950.50
550.50;568.00
您是否拥有'originalArray [0]'中第一列的所有数据? 'originalArray'的类型是什么? – marstran
他们都是双重的。当我读取文件时,首先将它读取到一个String数组中,然后将其解析为double。我需要使用这些数组来计算后面的值,这就是为什么Ii需要将列分隔成两个数组。 (将分析每列)。 – komnena
1991.00, 300.50, 489.50, 34.50, 900.00, 2052.00, 354.00, 399.00, 1299.50, 426.00, 29.50, 99.50, 2500.50, 358.50, 789.00, 998.00, 16.50 , 800.00, 1899。50, 550.50 // originalArray [0] – komnena