【发布时间】:2019-03-14 12:20:12
【问题描述】:
我想在 Java 中创建一个 switch/case 语句,并确保所有字符串都在语句中。
但是,在 Java 中使用简单的字符串(即 NORTH、SOUTH、EAST、WEST)很容易创建枚举。
如何处理带有点和空格的字符串?即“这是描述”,“com.stackoverflow.ClassName”
【问题讨论】:
-
恐怕你的问题不清楚。 “确保所有字符串都在语句中”是什么意思。那些字符串是什么?
-
通过将它们添加到您的案例列表中
-
Java 编译器不知道“NORTH”是一组基本方向的一部分。会怎么样?
-
通过使用枚举。他们正在做你所要求的。
-
@kumesana 警告,是的,毫无疑问,像声纳这样的库也会接受它。不幸的是,这并不能保证所有案件都得到处理,它只会通知您有些案件没有处理。至于默认值:就个人而言,我在打开枚举时会尽量避免它。毕竟:如果我希望他们被同等对待,我不需要不同的价值观。这里的危险是一切都确实被处理了。但是如果你在某个地方错过了一个 switch(myEnum) 来适应,如果默认处理与你需要的不同,它会给出错误的结果。
标签: java enums switch-statement