import java.util.Scanner;
public class Name {
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
String userName;
int userAge;
System.out.println("What is your full name?");
userName = in.nextLine();
System.out.println("What is your age?");
userAge = in.nextLine();
System.out.println("You're " + userName + " and you are " + userAge + " years old");
}
}
此错误不断弹出,我无法发现错误。 Plz的帮助。我是新手,我已经完成了对这个问题的研究。我无法找到问题,而且我已经为这个代码工作了一个星期。我想撕掉我的头发!!
答案 0 :(得分:3)
userAge
是int
,您正在使用in.nextLine()
为其分配值。 Scanner#nextLine
会返回String
,与int
不兼容。改为使用Scanner#nextInt
:
userAge = in.nextInt();
in.nextLine();
答案 1 :(得分:0)
另一种方法是:
userAge = Integer.parseInt(in.nextLine().trim());
Java是一种强类型语言,因此如果不进行类型转换,则无法将一种类型分配给另一种类型。在这种情况下,in.nextLine()
返回一个字符串,该字符串不能直接分配给int数据类型