我正在尝试制作荷兰邮政编码验证器。第一步,我需要检查邮政编码的第一个字符(始终是数字)是否在1-9之间。但是,当我只是尝试制作一个简单的if语句来检查第一个字符是否为false时,它返回为true。在此示例中,我将预制字符串“ 2097AR”作为方法“ checkPostcode”的输入。
public static boolean checkPostcode(String postcode){
String postcodeEen = postcode.substring(0,1);
boolean resultCheck = true;
System.out.println(postcodeEen);
if (postcodeEen == "1"){
resultCheck = false;
}
return resultCheck;
}
答案 0 :(得分:2)
Java中字符串的=
运算符检查两个对象是否相同,而#equals(String s)
则检查字符串的内容是否相同。
该函数始终返回true,因为postcodeEen
和"1"
不是同一对象,这使条件postcodeEen == "1"
为假。
这是工作代码段:
if(postcodeEen.equals("1"){
return false;
}