-1
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++); },但我不确定花括号错误是否在哪里。我不确定,这可能不是花括号错误,但我希望我能得到一些帮助,以免出现此错误。

4

3 回答 3

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除了更改to的值之外,没有做任何事情100。循环也被一个没有实际意义的块包围。我只能猜这就是你想要的:

for (l = 0; l < 100; l++) {
    matchCharAt(password, l);
    //...
}
于 2012-04-21T17:27:33.617 回答
1

这是您的主要问题的必然结果,但您也在更改此方法中的参数

public static boolean matchCharAt(StringBuilder password, int l){
        l = password.length();
        if (l < 0 || l > 100){
            return false;
        }

如果您传入l,那么您将使用 更改其值l = password.length()

于 2012-04-21T17:31:37.877 回答
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
于 2012-04-21T17:30:36.287 回答