基本密码程序问题

时间:2015-01-17 22:42:37

标签: java

我正在尝试制作密码检查程序但发生错误。它希望我将int更改为String,但我希望密码为数字5,所以它必须是一个int?

public class Kode {
    public static void main (String[] args) {
        Scanner scanner = new Scanner (System.in);
        System.out.println("Welcome, please write the password");
        int num1 = scanner.nextLine();
        if (num1 == 5) {
            System.out.println("Welcome");
        }
        else  {
            System.out.println("Password incorrect");
        }
    }
}

4 个答案:

答案 0 :(得分:1)

nextLine()方法将返回一个String,因此我甚至不会编译。您需要将num1的类型更改为String。然后将其与num1.equals("5");所需的密码进行比较。您还应该将其从num1重命名为更具描述性的内容,因为它不是明确的数字。

答案 1 :(得分:1)

试试这个...它会将String解析为想要的int

int num1=Integer.parseInt(scanner.nextLine());

答案 2 :(得分:0)

尝试使用scanner.nextInt()代替scanner.nextLine()

答案 3 :(得分:0)

nextLine()方法返回一个String,num1的类型为int,因此不会编译。 您可以使用Integer.parseInt(scanner.nextLine())将String更改为int。 如果String不是数字,则抛出异常。 但是,您似乎希望密码为5但不一定是数字。因此,将num1设为String,并将其命名为userInput或更具描述性的内容。