3 回答
TA贡献2011条经验 获得超2个赞
不要两次使用拆分方法。您可以使用一种拆分方法来完成任务。像这样,
void displayResult() {
String str = "tamilnadu||chennai-karanataka||bengaluru";
String[] res = str.split("\\|\\||-");
for(String city : res){
System.out.println(city);
}
}
您的输出将是:-
泰米尔纳德邦
金奈
卡拉纳塔克
班加罗尔
TA贡献1799条经验 获得超8个赞
我认为您必须尝试学习Regex。您可以使用|运算符来指定OR条件。因此,如果您使用以下命令,则应该获得所需的数组:
String [] res = str.split(“ \-| \ | \ |”);
即您的方法将是:
void displayResult(){
String str = "tamilnadu||chennai-karanataka||bengaluru";
String[] res = str.split("\\-|\\|\\|");
System.out.println(Arrays.asList(res)); // don't forget to import Arrays
}
TA贡献1818条经验 获得超11个赞
你不应该打电话res.toString。它将返回如下内容:
[Ljava.lang.String;@2c7b84de
相反,您可以使用regex拆分res中的元素\|\|:
String[] result = res[0].split("\\|\\|");
System.out.println(result.length); // 2
添加回答
举报