Java 识别不同任务输入的问题

Java 识别不同任务输入的问题,java,Java,我想做的是,当程序询问您是否想添加其他学生时,它会说“您想添加其他学生吗Y/N?” 如果输入了Y,它将允许您添加另一个,如果您输入N,它将带您回到我的程序的主菜单。所以我设置了Y=1和N=0我只是想弄清楚程序如何读取Y,并知道该怎么做 public class TestStudent { public static void main (String[] args) throws IOException { InputStreamReader isr = n

我想做的是,当程序询问您是否想添加其他学生时,它会说“您想添加其他学生吗
Y/N
?” 如果输入了
Y
,它将允许您添加另一个,如果您输入
N
,它将带您回到我的程序的主菜单。所以我设置了
Y=1
N=0
我只是想弄清楚程序如何读取
Y
,并知道该怎么做

public class TestStudent {

    public static void main (String[] args) throws IOException
    {  
        InputStreamReader isr = new InputStreamReader (System.in );
            BufferedReader stdin = new BufferedReader( isr );


        String check, tempString, tempString2, setName, getName, setScore, getScore;
        int tempInt, tempInt2, y, n;
        boolean quit = false;
        y=1;
        n=0;
        Student s1, s2, s3;
        s1 = new Student();
        s2 = new Student();
        s3 = new Student();

        do
        {
            System.out.println("A - Add student, D - Delete student, F - Find student, H - Help, S - Scores, X - Exit");
            check = stdin.readLine().toLowerCase();
            switch (check)
            {

                case "a":                
                    System.out.println("Enter the student's name");
                    tempString = stdin.readLine();
                    s1.setName(tempString);
                    System.out.println("Would you like to add another student Y/N?");
                    tempString = stdin.readLine();
                    if (y=1) {
                        System.out.println("Enter the student's name");
                        tempString = stdin.readLine();
                    }
                    s2.setName(check);
                    s3.setName(check);
                break;

首先,您需要将
toLowerCase
添加到
tempString
作业中

tempString = stdin.readLine().toLowerCase();
if (tempString.equals("y")) {

这将根据y检查他们提供给您的字符串,您的版本刚刚更新(
=
表示赋值)您没有使用的变量。

如果(y=1){
正在使用赋值运算符
=
。不知道是不是输入错误。嘿,nickkbmod,只有两个问题。你为什么要将代码转换为小写?还有没有什么具体原因让你不为System.in(如扫描仪)使用好的包装器?
y
始终是
1
(尽管输入错误)并且
y=1
不是布尔表达式,因此
if(y=1)
将不会编译。应使用
.equals()
进行比较Strings@MikeSamuel:C#和Java之间的语法总是让我忘记检查标记>@Guvante您实际上不应该在Java中使用
==
:)