SDUT 3328 JAVA判断合法标识符
JAVA判断合法标识符
Time Limit: 1000 ms Memory Limit: 65536 KiB
Problem Description
输入若干行字符串,判断每行字符串是否可以作为JAVA语法的合法标识符。 判断合法标识符的规则:由字母、数字、下划线“_”、美元符号“$”组成,并且首字母不能是数字。
Input
输入有多行,每行一个字符串,字符串长度不超过10个字符,以EOF作为结束。
Output
若该行字符串可以作为JAVA标识符,则输出“true”;否则,输出“false”。
Sample Input
abc _test $test a 1 a+b+c a’b 123 变量
Sample Output
true true true false false false false true
提示:本题主要运用Java自带的判断合法标识符的语句Character.isJavaIdentifierStart和Character.isJavaIdentifierPart来判断起始和局部是否为合法标识符。
代码实现如下(Java):
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner reader = new Scanner(System.in); while (true) { String s = reader.nextLine(); int flag = 0; char c; for (int i = 0; i < s.length(); i++) { c = s.charAt(i); if (i == 0) { if (Character.isJavaIdentifierStart(c)) { flag = 1; } else { flag = 0; break; } } else { if (Character.isJavaIdentifierPart(c)) { flag = 1; } else { flag = 0; break; } } } if (flag == 1) { System.out.println("true"); } else { System.out.println("false"); } } } }

浙公网安备 33010602011771号