And*_*sen 0 java sorting collections arraylist
如果我有一个arraylist,我想要一个排序和未分类的版本,我怎么能实现它.
试过收藏
ArrayList<Integer> someNumbers = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)
如果我然后创建一个新的arraylist = someNumbers并对其进行排序.原始的一个也被排序了?
ArrayList<Integer> sortedNumbers = someNumbers;
Collections.sort(sortedNumbers);
Run Code Online (Sandbox Code Playgroud)
两个列表都被排序.
我怎样才能简单地实现我想做的事情?(获取一个已排序的副本,并保持其原始顺序的原始)
mar*_*ran 11
执行此操作时ArrayList<Integer> sortedNumbers = someNumbers;
,您不会创建要排序的新列表.您基本上将变量分配给分配sortedNumbers
给的完全相同的列表someNumbers
.
要解决此问题,您可以从其他列表中创建新列表.像这样:
ArrayList<Integer> sortedNumbers = new ArrayList<>(someNumbers);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2296 次 |
最近记录: |