错误:无法比较的类型:String无法转换为int

时间:2015-05-25 03:24:00

标签: java

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的帮助。我是新手,我已经完成了对这个问题的研究。我无法找到问题,而且我已经为这个代码工作了一个星期。我想撕掉我的头发!!

2 个答案:

答案 0 :(得分:3)

userAgeint,您正在使用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数据类型