gpt4 book ai didi

java - 如何从数组列表中删除某个字符串之前的所有名称?

转载 作者:行者123 更新时间:2023-12-01 07:28:01 24 4
gpt4 key购买 nike

在数组列表中,如果添加一个字符串,然后对其进行排序,然后想要删除该字符串之前的所有内容,您会怎么做?

最佳答案

获取新添加元素的索引。使用此索引获取子列表并将子列表传递给 removeAll 方法:

删除

//addition = newly added String     
list.removeAll(new ArrayList<String>(list.subList(0,list.indexOf(addition))));

完整示例

public class ArrayListSortDelete {
public static void main(String[] args) {
String addition = "BB";
List<String> list = new ArrayList(Arrays.asList(new String[] { "A", "B", "C", "D" }));
list.add(addition);
Collections.sort(list);

System.out.println("Before");
for (String s : list) {
System.out.println(s);
}

//new ArrayList<String>() avoids concurrent modification.
list.removeAll(new ArrayList<String>(list.subList(0,list.indexOf(addition))));

System.out.println("After:");
for (String s : list) {
System.out.println(s);
}

}

}

关于java - 如何从数组列表中删除某个字符串之前的所有名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21127642/

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