有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

数组Java将字符串列表拆分为字符串列表

我试图将配置拆分为一个数组,但是 一些问题

我的配置看起来像:

Enchantments: Durability:3 Unbreaking:2

我希望我的数组看起来像[0]Durability [1]3 [2]Unbreaking [3]2

但我只能在[0]和[1]中获得耐久性 我不会走得更远。所有代码都有效,以下是您所需要的。 帮助代码标签在网站上是最差的,我无法获得它们 我的生活,所以在这里

if (((String)nodes.get(nodeapi)).contains("enchantments:")){
        System.out.println("found");
        ench = ((String)nodes.get(nodeapi)).replace("enchantments:", "");
        System.out.println(ench);
        String[] enc = ench.split(" ");
        System.out.println("0 " + enc[0]);
        System.out.println("1 " + enc[1]);
        int p = 0;
        for (int i2=0;i2<enc.length*2;i2++){
                p++;
                encha = enc[i2].split(":");
                System.out.println("Passed loop: " + p + " with encha: "+encha[i2]);
        }
}

共 (2) 个答案

  1. # 1 楼答案

    拆分字符串时,请尝试使用regex ":| "

    比如

    string.split(":| ");
    

    因此,您的代码将如下所示:

    String[] enc = ench.split(":| ");
    

    (如果ench是^{

    那么阵列就是你想要的

  2. # 2 楼答案

    你可以这样做

    String x = "Enchantments: Durability:3 Unbreaking:2";
    x = x.replace("Enchantments: ", "");
    String[] values = x.split(":|\\s");
    for(String val : values)
       System.out.println(val);