如何覆盖所有字母的小写字母a-z&使用for循环的大写A-Z?目前我有:
public static boolean isJavaIdentifierStart (char c) {
if (c == 'a') { //how do I cover the range of all lowercase letters with a for loop?
return true;
} if (c=='Z') { //how do I cover all uppercase letters with a for loop?
return true;
} else if (c == '_') {
return true;
} else if (c == '$') {
return true;
} else
return false;
}
}
答案 0 :(得分:1)
如果使用>=
和<=
运算符进行测试会更容易:
if( c >= 'a' && c <= 'z' ) {
// do something
}
您实际上并不需要测试范围内的所有值,只需确保c
位于某个范围内。你可以为大写字母做类似的事情。
实际上,您可以将方法简化为单个return
语句:
public static boolean isJavaIdentifierStart (char c) {
return (c >= 'a' && c <= 'z') ||
(c >= 'A' && c <= 'Z') ||
(c == '_') ||
(c == '$');
}
但是,我不认为Java标识符可以以$
开头,因此您的方法不正确。
答案 1 :(得分:0)
很难猜出你想要什么,但你可以使用:
for(char c = 'a'; c < 'z'; c++) {
System.out.println(c);
}
修改您的评论:
使用此表达式:(c >= 'a' && c <= 'Z')
并且类似于范围 -
检查。
这是有效的,因为char
是一个16位无符号整数,因此可用于计算。