空指针异常。 Java的。自动取款机

时间:2014-11-21 17:02:04

标签: java nullpointerexception

我正在使用java中的ATM系统。 当我执行这段代码时,我不断收到NullPointerException错误:

为什么我会这样? 如果我使用admin用户创建新用户,则该功能的唯一工作方式是。但是当我在没有创建新用户的情况下登录(两个用户在程序开始时初始化)并尝试删除用户时,控制台会抛出NullPointerException错误。

    public void showDeleteUser() {
    System.out.println("-----------------------------");
    System.out.println("Username of user to delete");
    input.nextLine(); 



    String userToDelete = input.nextLine();

    User _userToDelete = null;
    for (User user : users) {
        if (userToDelete.equals(user.getName())) {
            _userToDelete = user;
        }
    }

    if (_userToDelete != null) {
        users.remove(_userToDelete);
        System.out.println("Following user is deleted: " + userToDelete);
    } else {
        System.out.println("User: " + userToDelete
                + "User could not be found would you like to try again?");
    }

}

1 个答案:

答案 0 :(得分:0)

可能是因为input.nextLine();从未分配给变量,因此返回NullPointer。

如果你确实需要,你可以尝试:String delete = nextLine();。因为下一行是完全相同的String userToDelete = nextLine();如果是这样,那么只需删除上面提到的行。