【发布时间】:2016-02-02 01:27:25
【问题描述】:
子字符只能是字母、数字、美元符号或下划线的成员。
给定一个字符串,判断它是否是一个有效的标识符。我已经完成了大部分。
public class IdentifierChecker {
public static boolean isValid(String idn) {
// here's your code...
boolean valid = false;
if (idn.length() > 0) {
char firstChar = idn.charAt(0);
if (Character.isLetter(firstChar) || firstChar == '_'
|| firstChar == '$') {
for (int i = 1; i < idn.length(); i++) {
if (Character.isLetter(idn.charAt(i))
|| Character.isDigit(idn.charAt(i))
|| firstChar == '_' || firstChar == '$') {
valid = true;
} else {
valid = false;
}
}
}
}
return valid;
}
}
以下是有效标识符的语法:
每个标识符必须至少有一个字符。
第一个字符必须选自:字母、下划线或美元符号。第一个字符不能是数字。
其余字符(第一个除外)可以来自:字母、数字、下划线或美元符号。换句话说,它可以是任何有效的标识符字符。
有效标识符示例:
i
wo_rd
b2h
无效标识符示例:
1i
wo rd
!b2h
【问题讨论】:
-
在
valid=false时断开循环。
标签: java