[英]user input validation java classes
这是我对用户ID号的验证,在测试时,我输入了长度小于10的无效字符串,它设置了输入并且不执行else语句。
private String phoneNum;
public personalInfo(String phNum) {
setPhoneNum(phNum);
}
public String getPhoneNum() {
return phoneNum;
}
public void setPhoneNum(String phNum) {
if (phoneNum.startsWith("05")&&(phoneNum.length()==10)){
phoneNum = phNum;
}
else throw new IllegalArgumentException ("Invalid Phone Number!");
}
你的方法看起来像这样...
public void setPhoneNum(String phNum) {
if (phoneNum.startsWith("05")&&(phoneNum.length()==10)){
phoneNum = phNum;
}
并且您没有验证参数,而是变量phoneNum
...
改为:
public void setPhoneNum(String phNum) {
if (phNum.startsWith("05")&&(phNum.length()==10)){
phoneNum = phNum;
}
您应该验证要获取的值( phNum
),并将其设置为成员变量phoneNum
。
if (phNum.startsWith("05")&&(phNum.length()==10)){
phoneNum = phNum;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.