所以基本上我有一个学校项目,它在while循环中包含一个switch语句。
假设我输入“1”,它运行案例“1”中的代码。然后它会在之后破裂。但默认代码也总是可以运行。
以下是案例“1”代码:
case "1":
counter = arrayLength();
if (counter != 20) {
System.out.print("Student name: ");
students[array] = sc.nextLine();
System.out.print("Student mark: ");
marks[array] = sc.nextByte();
array++;
System.out.println("Student added succsessfully.");
} else {
System.out.println("You can only add 20 students.");
}
break;
这是默认代码:
default:
System.out.println("Incorrect input. Please try again.");
以下是输出:
1
Student name: Test
Student mark: 50
Student added successfully.
Incorrect input. Please try again.
我很有信心我的代码是正确的,但是如果我缺少什么,请告诉我如何修复它,谢谢。
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while(true){
switch(in.nextLine()){
case "1":
System.out.print("Student name: ");
String name = in.nextLine();
System.out.print("Student mark: ");
byte b = in.nextByte();
in.nextLine(); //consumes trailing '\n'
System.out.println("Student added succsessfully.");
break;
default:
System.out.println("Incorrect input. Please try again.");
}
}
}
使用in.nextLine()使用nextByte()后面的尾随\n。解释在注释中提供的链接中。
所以基本上我有一个学校的项目,它包含一个time循环中的开关语句。 假设我输入“1”,它在大小写“1”中运行代码。然后它应该在之后中断。但默认代码也总是运行。 这是案例“1”代码: 这是默认代码: 以下是输出: 我很有信心我的代码是正确的,但是如果我缺少什么,请告诉我如何修复它,谢谢。
下面的代码返回一个错误,但我不确定原因。需要更改哪些内容以允许编译?
问题内容: 对于建议抛出异常的人: 抛出异常不会给我编译时错误,而是给我运行时错误。我知道我会抛出异常,我宁愿在编译时死掉,也不愿在运行时死掉。 首先,我正在使用Eclipse 3.4。 我有一个数据模型,它的mode属性是Enum。 我目前正在编写此模型的视图,并且我有代码 我收到一个错误“此方法必须返回类型为java.awt.Color的结果”,因为我没有默认大小写,并且在函数末尾没有返回xx
我想这样做: 这样的事情可能吗?我想防止代码重复。我知道在这个特定的示例中,没有什么理由这样做,因为重复的代码很小。我能想到的唯一一件事是这样的(使用开关盒的穿透能力): 我宁愿不这样做,因为增加案例数量并在底部设置默认值会更有意义。 但我想知道,如果我这样做,它会不会搞乱引擎盖下的goto语句?特别是,由于数字或顺序错误,决定使用哪个goto语句不会花费更长的时间吗?switch语句中的顺序重要
switch 语句可以替代多个 if 判断。 switch 语句为多分支选择的情况提供了一个更具描述性的方式。 语法 switch 语句有至少一个 case 代码块和一个可选的 default 代码块。 就像这样: switch(x) { case 'value1': // if (x === 'value1') ... [break] case 'value2':
使用 switch 语句可以更简洁地实现 if ~ else if 的结构。格式如下。 switch(base_expression) { casecondition_expression1: casecondition_expression2: : : default: : : } 写在 base_expression 位置的表达式会在刚开始时被求值。switch 后面的语句块中的 case