我正在要求用户输入字符串,我想检查字母或数字,但是我是Java新手。这就是我到目前为止
Scanner scanner = new Scanner(System.in);
String s = scanner.nextLine();
isletter(s); // a call to the function
// function
public void isletter(String s)
{
for (int i = 0; i < s.length(); i++)
if (isLetter(s.charAt(i) ) ) {
System.out.println("is alpha = " + s);
}
else{
}
}
这是我尝试通过Dos进行编译时遇到的错误
c:\programming>javac LexemesTokenizer4.java
LexemesTokenizer4.java:62: non-static method isletter(java.lang.String) cannot b
e referenced from a static context
isletter(s);
^
LexemesTokenizer4.java:71: non-static method isletter(java.lang.String) cannot b
e referenced from a static context
isletter(s);
^
LexemesTokenizer4.java:85: cannot find symbol
symbol : method isLetter(char)
location: class LexemesTokenizer4
if (isLetter(s.charAt(i) ) ) {
^
3 errors
c:\programming>
我知道这很容易解决吗?
最佳答案
在isLetter
中,L
应该为小写。 (l
)。
if (isLetter(s.charAt(i) ) )
// ^ lowercase
撇开那个错误,为什么要在循环中递归调用方法
isletter
。