if-statement - Else-If 命令在执行自己的 ifs 后创建变量
问题描述
我知道标题令人困惑,但请听我说完。
我想创建一个扫描仪类型的程序,它会要求用户输入他们的成绩,同时使用 switch 和 else-if 显示他们的评论。
我尝试使用 Else-If 命令来查找用户的等级,并创建一个可以被 switch 命令工作/识别的变量。它似乎不起作用。
System.out.print("Enter FullGrade: ");
int FullGrade = ExpectedGradePeko.nextInt();
if(FullGrade < 0)
{ String Expec = "AAA"; }
else if(FullGrade < 79)
{ String Expec = "BBB"; }
else if(FullGrade < 84)
{ String Expec = "CCC"; }
else if(FullGrade < 89)
{ String Expec = "DDD"; }
else if(FullGrade < 100)
{ String Expec = "EEE"; }
switch(Expec)
{
case "AAA":
System.out.println("Did not meet expectations");
break;
case "BBB":
System.out.println("Fairly Satisfactory");
break;
case "CCC":
System.out.println("Satisfactory");
break;
case "DDD":
System.out.println("Very Satisfactory");
break;
case "EEE":
System.out.println("Outstanding");
break;
}
解决方案
您似乎在 if 语句的每个分支中声明了一个字符串变量。如果你先声明
/* This is where your variable is defined using the type specifier String */
String Expec = "";
你可以这样使用它
/* Use the variable (without the type specifier)
else if (...)
{
Expec = "grade";
}
推荐阅读
- java - 如何在itext pdf页面上添加页眉和页脚
- php - Symfony php自定义异常控制器不起作用
- java - Protobuf 生成对象的 AIDL 实现
- bash - grep 特定值用作使用 awk 的数据中的文件名
- java - Java Servlet doPost() 从 Postman 返回 null
- javascript - 等待异步队列进行(异步模块)
- tfs - Team Foundation Server 中按成员、任务和工作时间划分的表关系是什么?
- ios - Swift URLSession.shared.dataTask GET 请求 -1001 返回超时
- angular - 没有访问控制允许角度 4 中的原点
- excel - Excel时间比较和减法