-2

なぜこの例外が発生するのかわかりません!私の方法は非常に単純で、並列配列を埋めるためにループします。これが私の方法です

public void fillPhoneBook(){
    Scanner in = new Scanner(System.in);
    for(int i=0;i<this.names.length;i++){
        System.out.println("Enter Name:");
        this.names[i] =in.next();
        System.out.println("Enter Phone Number:");
        this.telephones[i]=in.next();//here start rising exception 
    }
    in.close();

2番目の入力の後にこの例外が発生します! `

- - アップデート - -

申し訳ありませんが、問題は電話アレイの初期化にありました

4

1 に答える 1

1

あなたが説明したのと同じシナリオを作成しましたが、奇妙なことに、そのような例外が発生していません。以下のコードを見てください

public class TestScanner {
    String names[] = new String[10];
    String telephones[] = new String[10];

    public static void main(String a[]) {

        TestScanner p = new TestScanner();

        Scanner in = new Scanner(System.in);
        for (int i = 0; i < p.names.length; i++) {
            System.out.println("Enter Name:");
            p.names[i] = in.next();
            System.out.println("Enter Phone Number:");
            p.telephones[i] = in.next();// here start rising exception
        }
        in.close();

    }
}

出力

Enter Name:
test1
Enter Phone Number:
123456
Enter Name:
test2
Enter Phone Number:
456789
Enter Name:
于 2012-12-15T19:50:04.560 に答える