在android中删除项目后,如何维护数组列表的排序?
我正在制作一个项目数组列表,并不时更改其内容。问题是,从数组列表中删除一个项目后,项目序列被取消排序,数组列表失去排序。我搜索了很多,但不知道如何在删除项目后保持数组列表的排序。以下是我使用的代码:在android中删除项目后,如何维护数组列表的排序?,android,sorting,arraylist,Android,Sorting,Arraylist,我正在制作一个项目数组列表,并不时更改其内容。问题是,从数组列表中删除一个项目后,项目序列被取消排序,数组列表失去排序。我搜索了很多,但不知道如何在删除项目后保持数组列表的排序。以下是我使用的代码: ArrayList<String> m_namesOfContactsArrayList = new ArrayList<String>(); for(int i = 0;i < 100;i++) m_namesOfContactsArrayList.add(i);
ArrayList<String> m_namesOfContactsArrayList = new ArrayList<String>();
for(int i = 0;i < 100;i++)
m_namesOfContactsArrayList.add(i);
请帮助我。提前谢谢。删除元素不会影响元素的顺序 仅在代码上演示一下: ArrayList m_namesOfContactsArrayList=新ArrayList()
for(int i=0;i<10;i++)
m_合同名称列表。添加(“+i”);
System.out.println(承包商名单的m_名称);
m_联系人名单。删除(3);
m_联系人名单。删除(4);
m_联系人名单。删除(5);
System.out.println(承包商名单的m_名称);
搬迁前:
[0,1,2,3,4,5,6,7,8,9]
拆除后:
[0,1,2,4,6,8,9]
这三个元素已消失,但列表仍处于排序状态。
顺便说一句,java
列表
是按插入顺序排序的。如果您想按照某些特定标准对元素进行排序,您可以使用例如SortedSet
,比如TreeSet
一个问题:为什么要使用这么长的变量名m_namesOfContactsArrayList
:)只是为了让它易于理解。+1用于给出有趣的场景。。。
m_namesOfContactsArrayList.remove(3);
m_namesOfContactsArrayList.remove(4);
m_namesOfContactsArrayList.remove(5);
for(int i = 0;i < 10;i++)
m_namesOfContactsArrayList.add(""+i);
System.out.println(m_namesOfContactsArrayList);
m_namesOfContactsArrayList.remove(3);
m_namesOfContactsArrayList.remove(4);
m_namesOfContactsArrayList.remove(5);
System.out.println(m_namesOfContactsArrayList);