我有下面的代码,我想从键盘输入并显示输入是否连续包含 2 个数字。如果是这样,我想false在控制台中打印出来,否则true. 它工作正常,除非输入的前 2 个字符是数字。在那种情况下,我仍然进入true控制台。谁能明白为什么?提前致谢
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System. in );
System.out.println("Enter:");
String s = sc.nextLine();
if (checkDigit(s)) {
System.out.println("false");
} else {
System.out.println("true");
}
}
public static boolean checkDigit(String s) {
boolean b = true;
char[] c = s.toCharArray();
for (int i = 0; i < c.length - 1; i++) {
if (Character.isDigit(c[i]) && Character.isDigit(c[i + 1])) {
b = true;
} else {
b = false;
}
}
return b;
}
}