在Java中比较字符
我想检查一个char变量是否是21个特定char之一,我能做的最短方法是什么?
例如:
if(symbol == ('A'|'B'|'C')){}
似乎没有用。我需要这样写吗:
if(symbol == 'A' || symbol == 'B' etc.)
回答:
如果您输入的是字符,并且您要检查的字符大部分是连续的,则可以尝试以下操作:
if ((symbol >= 'A' && symbol <= 'Z') || symbol == '?') { // ...
}
但是,如果您的输入是字符串,则更紧凑的方法(但更慢)是使用带有字符类的正则表达式:
if (symbol.matches("[A-Z?]")) { // ...
}
如果您有字符,则首先需要将其转换为字符串,然后才能使用正则表达式:
if (Character.toString(symbol).matches("[A-Z?]")) { // ...
}
以上是 在Java中比较字符 的全部内容, 来源链接: utcz.com/qa/406604.html