【发布时间】:2012-08-02 00:13:43
【问题描述】:
会对这段代码进行哪些修改?在最后几行中,我应该使用更多的 if-else 结构,而不是“if-if-if”
if (action.equals("opt1"))
{
//something
}
else
{
if (action.equals("opt2"))
{
//something
}
else
{
if ((action.equals("opt3")) || (action.equals("opt4")))
{
//something
}
if (action.equals("opt5"))
{
//something
}
if (action.equals("opt6"))
{
//something
}
}
}
稍后编辑:这是 Java。我认为 switch-case 结构不适用于字符串。
后期编辑2:
开关使用字节,短, char 和 int 原始数据类型。它 也适用于枚举类型 (在类和继承中讨论) 和一些“包装”的特殊类 某些原始类型:字符, 字节、短整型和整数(已讨论 在简单数据对象中)。
【问题讨论】:
-
选项必须是字符串吗?如果您可以将它们设为枚举(或在获取字符串时将其解析为枚举),那么您可以使用开关。
-
当您提出此类问题时,请指定您想要“优化”的内容:例如可读性、性能等。简单地说“你如何优化这段代码?”没有任何意义。我之所以提到这一点,是因为我看到一些响应假设您指的是性能,而另一些则假设您指的是可读性——这实际上可能是相互排斥的优化。
-
请将您的帖子标题更改为:“使用字符串选项优化 if-else /switch-case”。当前的标题毫无意义。在那之后我会投票赞成你的问题
标签: java