我正在尝试制作密码检查程序但发生错误。它希望我将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");
}
}
}
答案 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或更具描述性的内容。