Time Limit: 1000 ms Memory Limit: 65536 KiB
Submit Statistic Discuss
Problem Description
输入若干行字符串,判断每行字符串是否可以作为JAVA语法的合法标识符。 判断合法标识符的规则:由字母、数字、下划线“_”、美元符号“
”组成,并且首字母不能是数字。Input输入有多行,每行一个字符串,字符串长度不超过10个字符,以EOF作为结束。Output若该行字符串可以作为JAVA标识符,则输出“true”;否则,输出“false”。SampleInputabctest
”
组
成
,
并
且
首
字
母
不
能
是
数
字
。
I
n
p
u
t
输
入
有
多
行
,
每
行
一
个
字
符
串
,
字
符
串
长
度
不
超
过
10
个
字
符
,
以
E
O
F
作
为
结
束
。
O
u
t
p
u
t
若
该
行
字
符
串
可
以
作
为
J
A
V
A
标
识
符
,
则
输
出
“
t
r
u
e
”
;
否
则
,
输
出
“
f
a
l
s
e
”
。
S
a
m
p
l
e
I
n
p
u
t
a
b
c
t
e
s
t
test
a 1
a+b+c
a’b
123
变量
Sample Output
true
true
true
false
false
false
false
true
Hint
Source
houxq
import java.util.*;
class myclass {
String x;
myclass(String xx) {
x = xx;
}
boolean isjava() {
if (x != null && x.length() > 0) {
int pos = 0;
if (Character.isJavaIdentifierStart(x.charAt(pos))) {
pos++;
while (pos < x.length()) {
if (!Character.isJavaIdentifierPart(x.charAt(pos))) {
return false;
}
pos++;
}
return true;
}
}
return false;
}
}
class Main {
public static void main(String[] args) {
Scanner ss = new Scanner(System.in);
String x;
while (ss.hasNextLine()) {
x = ss.nextLine();
myclass my = new myclass(x);
boolean t = my.isjava();
System.out.println(t);
}
ss.close();
}
}