无法使用> =比较用户输入

时间:2018-09-02 23:19:30

标签: java java.util.scanner

我正在尝试编写一个程序,当用户输入数字等级时,系统将为用户提供字母等级。到目前为止,这是我的代码(将复制并粘贴A,A-,B +等)

import java.util.*;
import java.util.Scanner;

public class LetterGrade
{
    static Scanner userInput = new Scanner(System.in);
    public static void main(String[] args)
    {
        char grade;

            System.out.println("Enter your grade in numeric form ");

            if (userInput >= 97 && grade <= 100)
            {grade = "A+";}
            System.out.println("Your letter grade is " + grade);
    }
}

我收到的错误消息是:

C:\Users\User\Desktop\Lab2>javac LetterGrade.java
LetterGrade.java:14: operator >= cannot be applied to java.util.Scanner,int
                        if (userInput >= 97 && grade <= 100)
                                      ^
LetterGrade.java:15: incompatible types
found   : java.lang.String
required: char
                        {grade = "A+";}
                                 ^
2 errors

我使用Java不到一个星期,我不知道问题出在哪里。

编辑:发现“ A +”的问题。从炭级更改; ->字符串等级;。

1 个答案:

答案 0 :(得分:2)

您正在尝试将intScanner对象进行比较。这没有多大意义。我认为您想尝试比较用户输入的内容。您可以使用nextInt()方法来读取成绩的数值。像这样:

String letterGrade = "";
int grade = userInput.nextInt();
if(grade >= 97 && grade <= 100) {
   letterGrade = "A+";
}

(请注意,letterGrade必须是String而不是char,因为它必须是两个字符)