给定:
String[] directions = {"UP","DOWN","RIGHT","LEFT","up","down","right","left"};
String input = "Up";
如何验证来自 stdin
的输入是否在 directions
数组内?
我可以创建一个循环并使用 input
使用 equal 检查每个项目,但我正在寻找一种更优雅的方式。
问候,罗恩
最佳答案
将有效方向数组转换为列表:
List valid = Arrays.asList(directions)
或者直接声明为:
List valid = Arrays.asList("UP", "DOWN", "RIGHT", "LEFT", "up", "down", "right", "left")
然后您可以使用 contains
方法:
if (valid.contains(input)) {
// is valid
} else {
// not valid
}
请注意,这不会匹配混合大小写输入,例如“Up”,因此您可能只想在列表中存储大写值,然后使用 valid.contains(input.toUpperCase())
关于java - 如何验证字符串数组是否包含某个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9105358/