Detect Capital - LeetCode
class Solution {
public boolean detectCapitalUse(String word) {
if (word.length() == 1) return true;
for (int i = 0; i < word.length(); ) {
if (Character.isLowerCase(word.charAt(i))) {
while (i < word.length()) {
if (!Character.isLowerCase(word.charAt(i++))) return false;
}
}else if (Character.isUpperCase(word.charAt(++i))){
while (i < word.length()) {
if (!Character.isUpperCase(word.charAt(i++))) return false;
}
}
}
return true;
}
}
class Solution {
public boolean detectCapitalUse(String word) {
if (Character.isLowerCase(word.charAt(0))) {
StringBuilder str = new StringBuilder(word.toLowerCase());
return str.toString().equals(word);
}
String str1 = word.toUpperCase();
StringBuilder str2 = new StringBuilder();
str2.append(Character.toUpperCase(word.charAt(0)));
str2.append(word.substring(1).toLowerCase());
return str2.toString().equals(word) || str1.toString().equals(word);
}
}