Scanner和nullPointerException

时间:2012-12-15 19:43:24

标签: java arrays input nullpointerexception java.util.scanner

我不知道为什么我得到这个例外! 我的方法非常简单,它将循环填充我的并行数组 这是我的方法

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

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

---更新---

抱歉问题是初始化电话阵列

1 个答案:

答案 0 :(得分: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: