Java 如何在不使用阵列的情况下检查车牌是否有效?

Java 如何在不使用阵列的情况下检查车牌是否有效?,java,Java,我打算在下面提交这段代码,但TA说我不能使用数组。我真的不知道在没有阵列的情况下如何做到这一点。他说这比我做的简单得多 package b4; import java.util.Scanner; public class b2 { public static boolean isAlpha(String name) { char[] chars = name.toCharArray(); for (char c : chars) {

我打算在下面提交这段代码,但TA说我不能使用数组。我真的不知道在没有阵列的情况下如何做到这一点。他说这比我做的简单得多

package b4;
import java.util.Scanner;
public class b2 {
    public static boolean isAlpha(String name) {
        char[] chars = name.toCharArray();
        for (char c : chars) {
           if (!Character.isLetter(c)) {
               return false;
           }
        }
        return true;
     }

     public static void main(String[] args)
     {
         Scanner scn=new Scanner(System.in);
         System.out.print("Enter a valid plate number: ");
         String plate=scn.next();

         if (plate.length()==5) {
             if (plate.contains("-")) {
                 String[] sp=plate.split("-");

                 if (isAlpha(sp[0])&&sp[0].length()==2) {
                     try {
                         Integer.parseInt(sp[1]);
                         System.out.println(plate+" is a a valid plate number.");
                     } catch(Exception e) {
                         System.out.println(plate+" is a an invalid plate number.");
                     }
                 } else {
                     System.out.println(plate+" is a an invalid plate number.");
                 }
             } else {
                 System.out.println(plate+" is a an invalid plate number.");
             }

         } else {
             System.out.println(plate+" is a an invalid plate number.");
         }
     }
}
这是我们最初提出的问题,没有提到我们不能使用数组


你能用正则表达式吗?如果可以的话,这很简单

您的正则表达式代码可能如下所示:

\b[A-Z][A-Z]-[0-9][0-9]\b

然后,您可以使用该函数检查输入是否有效。

不,他说它需要像回到基础java一样。所以只需要使用条件语句。仅使用like if else和&absolute value等,我想您不能拆分字符串,而只使用string.charAt()-与您的isAlpha方法相同。使用string.charAt()代替数组。请访问并阅读如何提出好的问题。