Java 如何遍历到数组的下一个位置
我有一个构造函数,它接受一行文本,比如2街|西班牙|牙买加Java 如何遍历到数组的下一个位置,java,arrays,Java,Arrays,我有一个构造函数,它接受一行文本,比如2街|西班牙|牙买加 public Address(String lines) { arrOfStr = lines.split("[|]"); streetName = arrOfStr[0]; zone = arrOfStr[1]; countryName = arrOfStr[2]; } 以及一个方法,该方法从构造函数中获取字符串末尾的国家 public String getC
public Address(String lines) {
arrOfStr = lines.split("[|]");
streetName = arrOfStr[0];
zone = arrOfStr[1];
countryName = arrOfStr[2];
}
以及一个方法,该方法从构造函数中获取字符串末尾的国家
public String getCountry() {
return countryName;
}
public Address(String lines) {
arrOfStr = lines.split("[|]");
streetName = arrOfStr[0];
zone = arrOfStr[1];
if (countryName != " ") {
countryName = arrOfStr[2];
} else {
countryName = arrOfStr[3];
}
}
对于给定的输入,例如2 Street | Spain | |牙买加,我希望获得国家名称,但输出仅返回一个空格
这是我试图通过修改构造函数来获得字符串末尾的国家
public String getCountry() {
return countryName;
}
public Address(String lines) {
arrOfStr = lines.split("[|]");
streetName = arrOfStr[0];
zone = arrOfStr[1];
if (countryName != " ") {
countryName = arrOfStr[2];
} else {
countryName = arrOfStr[3];
}
}
关于如何获取国家名称有什么帮助吗?如果我理解正确,字符串的最后一部分是什么是国家名称。countryName=arrOfStr[arrOfStr.length-1]会有帮助吗?您的第一次尝试似乎会奏效。但我不明白你的第二次尝试。首先,不要将字符串与==或!=,您使用equals方法。同样,当你在构造函数中时,NoWYNAMEY应该是NULL,否则将永远不会到达其他分支。这不能解决你的问题,但是你可能会认为这是一个更可读的——> Trime.SultType。Pattern.quote做什么?为什么它比我现在拥有的更具可读性@大卫这正是我要找的。谢谢你的帮助。