我的问题出现在if语句中—如果变量“hours”大于10,我希望将额外的hours乘以2.00,并将结果加上9.95,但在编译时收到错误,我不明白原因。非常感谢您的帮助。
String choice;
double hours;
Scanner input = new Scanner(System.in);
System.out.print("Enter which package you are using A, B or C? ");
choice = input.nextLine();
choice = choice.toUpperCase();
System.out.print("Enter the amount of hours used: ");
hours = input.nextDouble();
switch ( choice )
{
case "A":
if ( hours > 10 ){
(( hours - 10) * 2 ) + 9.95; << ERROR: Not a statement!
}
else
System.out.println("Total: $9.95");
break;
为便于参考,已将其答复和编辑为:
case "A":
if ( hours > 10 ){
total = (( hours - 10) * 2 ) + 9.95; // Initialised to total
System.out.println("Total: $" + total);
}
else
System.out.println("Total: $9.95");
break;
4条答案
按热度按时间bq8i3lrv1#
您没有设置此表达式值
(( hours - 10) * 2 ) + 9.95;
任何变量。将该值设置为任何变量,如下所示:0x6upsns2#
您需要指定从该行生成的结果值,如下所示:
了解java中的有效语句
e1xvtsh33#
您必须将结果分配给hours变量,如下所示:
wfypjpf44#
该行不是java语句,根据oracle文档,该语句应该是一个完整的执行单元
声明
语句大致相当于自然语言中的句子。语句构成完整的执行单元。通过用分号(;)终止表达式,可以将以下类型的表达式生成语句。
赋值表达式
任何使用++或--
你可以编写方法调用
对象创建表达式