java值在从ArrayList转换为ArrayAndroid时交换
我有一个ArrayList,它有一些元素。此列表中的项目将重复。我想将相似的值分组并将其转换为数组
目前我的ArrayList是:-
ArrayList<String> isonC = new ArrayList<String>();
isonC的值=`[a,a,a,b,c,c,c,c,c,d,d,d,d,d,d,d] 我认为:-
icons = isonC.toArray(new String[isonC.size()]);
icons = new HashSet<String>(Arrays.asList(icons)).toArray(new String[0]);
我得到的值如下:-
图标=[a, c, b,d]
鉴于元素的实际顺序应为:-
[a,b, c,d]
为什么第二和第三个值互换
任何建议都会有帮助。 谢谢
# 1 楼答案
尝试使用
TreeSet
而不是HashSet。请尝试以下方法:-# 2 楼答案
从documentation到
LinkedHashSet
:因此,假设您希望在
oldArray
中出现较早的项在newArray
中出现较早,则以下操作应该可以工作: