Java拆分为3个字段

3

我有一个类似于"NAME:City~FORMAT:S~PRINT:true"的字符串。

我想将"City"的值分配给字段1,"S"的值分配给字段2,并将true赋值给字段3(布尔类型)。

我知道可以通过粗暴的方式解决这个代码问题,但是有没有一种方法可以在不对下标进行某种检查的情况下解析第二次拆分的值到相应的字段中(例如,下标0是名称,但我想要下标1,也就是"City"的值)。

   for (String element : text.split("~")) {
        for (String rule : element.split(":")) {
            System.out.println(rule);
        }

    }
2个回答

2
您可以通过类似以下方式避免循环:

您也可以通过类似以下方式避免循环:

String[] flds = text.split("NAME:|~FORMAT:|~PRINT:");
String field1 = flds[1];
String field2 = flds[2];
String field3 = flds[3];

1

你可以只是做

for (String element : text.split("~")) {
   System.out.println(element.split(":")[1]);
}

split() 返回一个数组,你需要第二个元素,它的索引是1


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接