【问题标题】:Why This Code Give me Error in if Statment [closed]为什么此代码在 if 语句中给我错误 [关闭]
【发布时间】:2020-02-27 13:13:42
【问题描述】:

为什么只在 if 语句中的 Extra word 中给我错误

switch (Class) {
  case 'F':
       value = 30;
       Extra = Weight-value ;
       break ;
  case 'B':
      value = 25 ;
      Extra = Weight - value ;

      break ;

   case 'E':
       value = 20 ;
       Extra = Weight - value ;

       break;
    default  :
        System.out.println("You  Not  Enter The  Right Class ");
}
System.out.println("Extra is " );

if ( Extra >=0 )
{
    Total = Extra * 10 ;
    System.out.println("You Have Extra  weight "+Extra +"And You Should Pay "+Total );

}

else
{
    System.out.println("No  Extra Weight to Pay Your  Weight is   "+Weight);
}

【问题讨论】:

  • 请包含整个代码。
  • 这可能是因为Extra 可能永远不会被初始化,在switch 语句的default 子句中添加默认值
  • 并描述您遇到的错误(例如通过包含错误消息)。同样根据 Java 代码约定,变量应该仅以小写字符开头。

标签: java helper


【解决方案1】:

因为您尝试使用 Extra 的值,但可能从未为 Extra 分配值(如果 Class 不是 'F'、'B' 或 'C' ,因此遵循通过switch 的default 路径)。在使用之前,必须为局部变量赋值。


我强烈建议遵循标准Java naming conventions。局部变量不应以大写字符开头。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多