【发布时间】:2011-10-06 02:17:23
【问题描述】:
我在一个文件中有不同的变量,我需要将它们分配给不同的变量数组。这是文件中的内容:
Lee Keith Austin Kacie Jason Sherri Jordan Corey Reginald Brian Taray
Christopher Randy Henry Jeremy Robert Joshua Robert Eileen
Cassandra Albert Russell Ethan Cameron Tyler Alex Kentrell rederic
10 20 100 80 25 35 15 10 45 55 200 300 110 120 111 7 27 97 17 37
21 91 81 71 16 23 33 45
A b c w e r t q I u y b G J K S A p o m b v x K F s q w
11.5 29.9 100 200 115.1 33.3 44.4 99.9 100.75 12.2 13.1 20.3 55.5 77.7
12.1 7.1 8.2 9.9 100.1 22.2 66.6 9.9 1.25 3.75 19.9 3.321 45.54 88.8
这是我的代码:
import java.util.*;
public class Prog5Methods{
public Prog5Methods(){
}
public void ReadFromFile(Scanner input, String [] names, int [] numbers, char [] letters, double [] num2){
System.out.println("\nReading from a file...\n");
System.out.println("\nDONE\n");
int r = 0;
while(input.hasNext()){
names[r] = input.next();
numbers[r] = input.nextInt();
letters[r] = input.next().charAt(0);
num2[r] = input.nextDouble();
r++;
}
} // end of readFromFile
我每次都收到 IndexOutOfBounds 异常。如何将这些类型分配给这些数组?
【问题讨论】:
-
您的文件和您的代码似乎根本不匹配。您的代码表明您将有一个名称,然后是一个 int,然后是一个字母,然后是一个 double,然后重复直到全部消失。您的文件显示了所有组合在一起的名称,所有整数,所有字符,所有双精度数等......我认为你最好解决这个问题。另外,您是否提前知道每个有多少人在场?
-
对于家庭作业问题,你应该这样标记它们。
-
好的,所以每种类型都有 28 个项目。您是否使用 28 作为为每个数组分配的数组项数?考虑这样做,然后按照数据文件中显示的类型顺序一次填充每个数组。
-
OP 为同一个问题启动了第二个线程 - Printing a list in java,这是答案 - stackoverflow.com/questions/7669571/printing-a-list-in-java/…