-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();

我在第二次输入后得到了这个异常!`

- - 更新 - -

抱歉,问题在于初始化电话阵列

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 回答