import java.util.*;
public class Programming {
public static void main(String[] args) {
//Scanner scan = new Scanner( System.in );
int l=0;
StringBuilder password = new StringBuilder();
public static boolean matchCharAt(StringBuilder password, int l){
l = password.length();
if (l < 0 || l > 100){
return false;
}
for (int i = 0; i < password.length();i++){
if (!Character.isLetter(password.charAt(l)))
return false;
}
return true;
}
}
它说我在{ for (l=0; l < 100; l++); }
的行上有一个错误,但我不确定卷曲支撑错误是否存在。它可能不是一个大括号错误,我不确定,但我希望我可以得到一些帮助,以避免这个错误。
答案 0 :(得分:8)
您永远不会关闭main()
方法块:
public static void main(String[] args) {
//Scanner scan = new Scanner( System.in );
int l=0;
StringBuilder password = new StringBuilder();
{
for (l = 0; l < 100; l++);
}
} //HERE!
除了这个循环:
for (l = 0; l < 100; l++);
除了将l
的值更改为100
之外,没有做任何事情。此外,循环被一个没有实际意义的块包围。我只能猜到这就是你想要的:
for (l = 0; l < 100; l++) {
matchCharAt(password, l);
//...
}
答案 1 :(得分:1)
这是您的主要问题的必然结果,但您也在更改此方法中的参数
public static boolean matchCharAt(StringBuilder password, int l){
l = password.length();
if (l < 0 || l > 100){
return false;
}
如果您传递l
,那么您将使用l = password.length()
更改其值。
答案 2 :(得分:0)
我不确定你想要什么。这应该至少编译:
public class SomeClass {
public static void main(String[] args) {
//Scanner scan = new Scanner( System.in );
int l=0;
StringBuilder password = new StringBuilder();
for (l = 0; l < 100; l++) {
; // Does nothing...
}
} // end of "main()"
public static boolean matchCharAt(StringBuilder password, int l){
l = password.length();
if (l < 0 || l > 100){
return false;
}
for (int i = 0; i < password.length();i++){
if (!Character.isLetter(password.charAt(l)))
return false;
}
return true;
} // end of "matchCharAt()"
} // end of class