相关疑难解决方法(0)

是否存在一个现有的库方法,用于检查Java中的String是大写还是小写?

我知道upper()Java和其他框架中有很多方法,比如Apache commons lang,它将String转换为全部大写.

有没有提供任何公共库等的方法isUpper(String s)isLower(String s)方式,检查在字符串中所有字符都是大写或小写?

编辑:

关于转换为Upper并与之比较的许多好答案.我想我应该更具体一点,并说我已经想到了这一点,但我希望能够使用现有方法.

关于可能在apache.commons.lang.StringUtils中包含此内容的好评.有人甚至提交了一个补丁(20090310).希望我们很快就会看到这一点. https://issues.apache.org/jira/browse/LANG-471

编辑:

我需要这种方法的方法是将有时会全部大写的酒店名称大写.如果它们都是小写或大写,我只想把它们大写.我确实遇到了一些帖子中提到的非字母字符的问题,最后做了类似这样的事情:

private static boolean isAllUpper(String s) {
    for(char c : s.toCharArray()) {
       if(Character.isLetter(c) && Character.isLowerCase(c)) {
           return false;
        }
    }
    return true;
}
Run Code Online (Sandbox Code Playgroud)

这个讨论和不同的解决方案(有不同的问题),清楚地表明在commons.lang中需要一个好的实体isAllUpper(String s)方法.

在那之前,我猜这myString.toUpperCase().equals(myString)是最好的方式.

java string

30
推荐指数
6
解决办法
6万
查看次数

标签 统计

java ×1

string ×1