我想检查存储在变量char c中的字符是否来自{'a','b','c','1','3','5','7','9'}。
科西嘉岛我可以通过以下方式做到:
if(c =='a'|| c =='b'|| c =='c'|| c =='1'|| c =='3'|| c =='5 '|| c =='7'|| c =='9'){ //做点什么... }
如果我在Java程序中的不同位置检查变量c和允许的字符的不同集合,则会得到太尴尬的代码。 我正在寻找更简单的一个。
答案 0 :(得分:2)
最简单的方法可能是保留一组允许的字符:
private static final Set<Character> ALLOWED =
new HashSet<>(Arrays.asList('a' , 'b', 'c', '1', '3', '5', '7', '9'));
public static final boolean isAllowed(char c) {
return ALLOWED.contains(c);
}