と等しく、自動的にインクリメントしないため、ArrayIndexOutOfBoundsException: 0
エラーが発生しています。期待どおりに動作するように、このコードを修正するにはどうすればよいですか?i
0
配列で読み取ったファイルで読み取ったデータの各行を自動的にインクリメントしたい。どこに置いてi++;
も、この問題が発生します。別の変数を使用する場合: 同じ問題。
import java.io.*;
import java.util.*;
public class IdolResults
{
public static void main(String[] args) throws FileNotFoundException
{
//construct Scanner
//Scanner in = new Scanner(System.in);
Scanner in = new Scanner(new File("eleVotes1.txt"));
Scanner in2 = new Scanner(new File("eleVotes2.txt"));
String[][] array;
int[][] array2;
String[] nameArray;
int[] voteArray;
int i = 0;
while (in.hasNextLine())
{
String name = in.next();
int vote = in.nextInt();
System.out.println(name);
System.out.println(vote);
//stuffhere: print, save name and vote, etc..
//create an array and save info there
array = new String[i][];
array2 = new int[i][];
array[i][0] = name;
array2[i][1] = vote;
//individually store name and votes
nameArray = new String[10];
voteArray = new int[10];
nameArray[i] = name;
voteArray[i] = vote;
i++;
}
}//end of main
}//end of class
私は最終的にこの保存されたデータを操作したいので、これを作ることができます: 期待される出力:
Results for 2099
Idol Name Votes Received % of Total Votes
__________________________________________________
Clarkson 80,000 14.4%
Seacrest 100,000 18.0%
Dunkleman 75,000 13.5%
Cowell 110,000 19.7%
Abdul 125,000 22.4%
Jackson 67,000 12.0%
Total Votes 557,000
The winner is Abdul!