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中使用==
:)