Java 字符串扫描器

Java 字符串扫描器,java,eclipse,Java,Eclipse,我试图让用户输入字母a、B、C | | a、B、C来选择一个包 我卡住了,非常感谢您的帮助!谢谢 public class AssignmentFive { public static void main(String[] args) { String A = "You chose package A"; String B = "You chose package B"; String C = "You chose package C"

我试图让用户输入字母a、B、C | | a、B、C来选择一个包

我卡住了,非常感谢您的帮助!谢谢

public class AssignmentFive {

    public static void main(String[] args) {

        String A = "You chose package A";
        String B = "You chose package B";
        String C = "You chose package C";

        System.out.println ("Package A: For $9.95 per month, 10 hours of access is provided. Additional hours are $2.00 per hour.");
        System.out.println("Package B: For $13.95 per month, 20 hours of access is provided. Additional hours are $1.00 per hour");
        System.out.println("Package C: For $19.95 per month, unlimited access is provided");

        System.out.println();

        System.out.println("Please enter the letter of the package you want");

        Scanner value = new Scanner(System.in);
        System.out.println(value.nextLine());

        if(userinput) {
            System.out.println(B);
        }        

    }
}
主线程java.lang中出现异常。错误:未解析编译 问题:无法将userinput解析为位于的变量 AssignmentFive.mainAssignmentFive.java:24

这会奏效的

public class Main {

    public static void main(String[] args) {
        String A = "You chose package A";
        String B = "You chose package B";
        String C = "You chose package C";

        System.out.println ("Package A: For $9.95 per month, 10 hours of access is provided. Additional hours are $2.00 per hour.");
        System.out.println("Package B: For $13.95 per month, 20 hours of access is provided. Additional hours are $1.00 per hour");
        System.out.println("Package C: For $19.95 per month, unlimited access is provided");

        System.out.println();

        System.out.println("Please enter the letter of the package you want");

        Scanner value = new Scanner(System.in);
        String userinput = value.nextLine().toUpperCase();

        if((userinput.equals("A")))
            System.out.println(A);
        else if ((userinput.equals("B")))
            System.out.println(B);
        else if ((userinput.equals("C")))
            System.out.println(C);
        }
  }
您需要声明userInput变量,如异常所示。这个特殊的异常是编译时异常,您需要在运行程序之前解决它


还需要修改if条件,因为它取决于如何定义userInput变量。目前它作为布尔变量例外。如果将userInput定义为字符串,则必须使用user equals方法来验证用户输入。

错误告诉您到底是哪里出了问题,您从未创建过变量UserInputHis,但它无法回答代码不起作用的原因。解释一下你的代码可能会帮助他们学习。@Pamplemousse9注意到。谢谢@mathias payne,所以您出现此错误的原因是您使用了编译器无法识别的变量。此错误的常见原因是:1在您的情况下变量未声明2或变量不在方法的范围内3在类的情况下,错误地导入类4或导入的类不存在希望此帮助。谢谢