确定字符串是否为合法的Java标识符
要确定String是否为合法的Java标识符,请使用Character.isJavaIdentifierPart()和Character.isJavaIdentifierStart()方法。
Character.isJavaIdentifierPart()
java.lang.Character.isJavaIdentifierPart()确定字符(Unicode代码点)是否可以作为Java标识符的一部分,而不是第一个字符。
如果满足以下任一条件,则字符可能是Java标识符的一部分。
这是一封信
它是货币符号(例如“ $”)
它是连接的标点符号(例如'_')
这是一个数字
它是一个数字字母(例如罗马数字字符)
Character.isJavaIdentifierStart()
java.lang.Character.isJavaIdentifierStart()确定是否允许该字符(Unicode代码点)作为Java标识符中的第一个字符。
且仅当以下条件之一为真时,字符才能启动Java标识符。
isLetter(ch)返回true
getType(ch)返回LETTER_NUMBER
引用的字符是货币符号(例如“ $”)
引用的字符是连接的标点字符(例如“ _”)。
以下是检查字符串中的单个字符以及整个字符串的示例。它检查字符串是否可以是合法的Java标识符。
示例
import java.util.*;public class Demo {
public static void main(String []args) {
char ch1, ch2;
ch1 = 's';
ch2 = '_';
String str = "jkv_yu";
System.out.println("Checking characters for valid identifier status...");
boolean bool1, bool2;
bool1 = Character.isJavaIdentifierPart(ch1);
bool2 = Character.isJavaIdentifierStart(ch2);
String str1 = ch1 + " may be a part of Java identifier = " + bool2;
String str2 = ch2 + " may start a Java identifier = " + bool2;
System.out.println(str1);
System.out.println(str2);
System.out.println("\nChecking an entire string for valid identifier status...");
System.out.println("The string to be checked: "+str);
if (str.length() == 0 || !Character.isJavaIdentifierStart(str.charAt(0))) {
System.out.println("Not a valid Java Identifier");
}
for (int i = 1; i < str.length(); i++) {
if (!Character.isJavaIdentifierPart(str.charAt(i))) {
System.out.println("Not a valid Java Identifier");
}
}
System.out.println("Valid Java Identifier");
}
}
输出结果
Checking characters for valid identifier status...s may be a part of Java identifier = true
_ may start a Java identifier = true
Checking an entire string for valid identifier status...
The string to be checked: jkv_yu
Valid Java Identifier
以上是 确定字符串是否为合法的Java标识符 的全部内容, 来源链接: utcz.com/z/354984.html