【发布时间】:2011-07-15 23:12:46
【问题描述】:
在我的应用程序中,我有许多可以优化的 IF 语句,但我终其一生都无法找到一个没有错误的好的解决方案。
我当前的代码:
if (User_XP > -1){User_level.setText("1");Minimum_Level= Level1; Maximum_level = Level2;}
if (User_XP > Level1){User_level.setText("1");Minimum_Level= Level1; Maximum_level = Level2;}
if (User_XP > Level2){User_level.setText("2");Minimum_Level = Level2; Maximum_level = Level3;}
if (User_XP > Level3){User_level.setText("3");Minimum_Level = Level3; Maximum_level = Level4;}
if (User_XP > Level4){User_level.setText("4");Minimum_Level = Level4; Maximum_level = Level5;}
if (User_XP > Level5){User_level.setText("5");Minimum_Level = Level5; Maximum_level = Level6;}
if (User_XP > Level6){User_level.setText("6");Minimum_Level = Level6; Maximum_level = Level6;}
if (User_XP > Level7){User_level.setText("7");Minimum_Level = Level7; Maximum_level = Level6;}
if (User_XP > Level8){User_level.setText("8");Minimum_Level = Level8; Maximum_level = Level6;}
if (User_XP > Level9){User_level.setText("9");Minimum_Level = Level9; Maximum_level = Level6;}
它的想法是从游戏中计算出用户等级,并从中创建一个百分比。但是这个编码领域确实效率不高,因为它会产生多个错误,有人对可能的解决方案有任何提示吗? 请询问是否需要更多信息。
【问题讨论】:
-
我建议使用 switch 语句。
-
我会调查的,谢谢。
-
switch 语句测试是否相等。如果您想测试某个范围内的数字,那么开关对您没有帮助。
-
你想为优化什么?可读性还是速度?
-
是的,确实如此。我一开始没有看到。对不起。
标签: java android optimization if-statement