gpt4 book ai didi

java - 为什么这个方法总是返回false?

转载 作者:行者123 更新时间:2023-12-01 01:04:00 25 4
gpt4 key购买 nike

我想使用提供的方法评估电话号码。电话号码的长度应始终为 10。但是,以下方法似乎总是返回 false。这是为什么?谢谢。

public static boolean valPhoneNumber(String phonenumber){
boolean result= true;

if (phonenumber.length() > 10 || phonenumber.length() < 10){
result= false;

}else
phonenumber.length();
char a=phonenumber.charAt(0);
char b=phonenumber.charAt(1);
char d=phonenumber.charAt(3);
char e=phonenumber.charAt(4);
char f=phonenumber.charAt(5);

if (a<2 || a>9){
result = false;
}else if( b<0 || b>8){
result = false;
}else if (d<2 || d>9){
result = false;
}else if (e==1 && f==1){
result = false;
}
return result;
}

最佳答案

所以查看你的阶梯,比较字符和数字。在这种情况下,将使用 ASCII 值进行比较。

你可以用单引号来检查范围:

if (a < '2' || a > '9') { 
result = false;
} else if( b < '0' || b > '8') {
result = false;
} else if (d < '2' || d > '9') {
result = false;
} else if (e == '1' && f == '1') {
result = false;
}

一个类轮:

result = !((a < '2' || a > '9') || (b < '0' || b > '8') || (d < '2' || d > '9') || (e == '1' && f == '1'));

关于java - 为什么这个方法总是返回false?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58445429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com