Java 如何在不使用阵列的情况下检查车牌是否有效?
我打算在下面提交这段代码,但TA说我不能使用数组。我真的不知道在没有阵列的情况下如何做到这一点。他说这比我做的简单得多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) {
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()代替数组。请访问并阅读如何提出好的问题。