gpt4 book ai didi

Java Arraylist 排序问题

转载 作者:行者123 更新时间:2023-11-29 08:35:51 27 4
gpt4 key购买 nike

我正在创建一个 Android 应用程序并使用 Volley 通过发送请求来获取网页。并使用 Jsoup 解析 HTML 代码。我使用 Jsoup 选择器来过滤和提取所需的数据。然后我拆分数据并存储在一个字符串数组中。最后,我循环字符串数组并将所有数据存储在数组列表中。

现在的问题是,数据是标签和值的形式,我已经在数组列表中插入数据(在第一个索引“标签”和第二个索引“值”处)但是数组列表顺序不正确。它输出:

[Label 1,  Label 2,  Label 3,  Label 4,  Label 5,  Value 5,  Value 4,   Value 3,  Value 2, Value 1]

所以第一个标签在第一个索引处,第一个值在最后一个索引处。也许有什么不对或遗漏的地方。

我已经用 Java 创建了简单的示例场景,下面是示例代码:

public static void main(String[] args) {

ArrayList<String> arrayList = new ArrayList<>();

String labels = "Label 1: Label 2: Label 3: Label 4: Label 5";
String values = "Value 1\n Value 2\n Value 3\n Value 4\n Value 5\n";

String[] labelsArray = labels.split(":");
String[] valuesArray = values.split("\n");

for(int i = 0; i < labelsArray.length; i++){
arrayList.add(i, labelsArray[i]);
arrayList.add(i+1, valuesArray[i]);
}
System.out.println(arrayList.toString());
}

PS:我可以稍微调整一下使其工作,但我想知道;实际问题是什么。

最佳答案

查看您要添加这些项目的位置。当 i 为 0 时,您在 0 处添加一个标签,然后在 1 处添加一个 value。然后当 i 为 1 时,您在 处添加一个标签1(将 value 移至 2),然后将另一个 value 移至 2(在前一个值之前)。当 i 为 2 时,你在 2 处添加一个标签(在你的两个标签之后和你的两个 values 之前,它们被推到 3),然后是一个 value 在 3,在所有之前的 values 之前。

考虑使用 add(x) 而不是 add(index, x)

关于Java Arraylist 排序问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44167900/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com