介绍
这篇文章将为大家详细讲解有关使用Java怎么对数组去重与排序,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
//,声明int 数组,并初始化 int [], intArry =,{5、4、7、8、2 0, 1, 9日,3、6、10};//,对int数组进行排序 Arrays.sort (intArry);
Junit测试类源码:
package com.gjnote.test.array; import java.util.Arrays; import org.junit.Test; public class  TestArraysSort {//,声明int 数组,并初始化 int [], intArry =,{5、4、7、8、2 0, 1, 9日,3、6、10}; @Test public void 测试(),{//,对int数组进行排序 Arrays.sort (intArry); for (int 小姐:=,0;,小姐:,lt;, intArry.length;,我+ +),{ System.out.println (intArry[我]); } System.out.println (Arrays.toString (intArry)); } }
控制台输出
0
引用>
1
2
3
4
5
6
7
8 9 10
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)<代码> java.util.Collections.sort() 代码>
通过实现内部<代码>与代码>方法实现对象的比较
示例代码片段如下
/* * *,使用,Collections.sort(列表,比较器(){}); *,对列表数组排序,推荐使用方法 */public void  collectionsSortElement1 (List 列表),{ Collections.sort(列表,new 比较器(),{ @Override public int 比较(o1, String String o2), {//,根据实际排序需要调整compareTo对象顺序 return (o2) .compareTo (o1群); } }); }<强> Java实现对列表去重强>
方式一,使用的循环遍历去除列表中的重复元素
代码片段如下
List tempList =, new ArrayList ();//,去除原始中列表的重复元素 时间:for (String String originalList), { if (! tempList.contains (string)), { tempList.add(字符串); } }方式二,使用集去重
代码片段如下
//, Set 利用组元素唯一性,去重 Set Set =, new HashSet (originalList); List tempList =, new ArrayList(集);方式三,使用TreeSet去除重复元素
TreeSet TreeSet =, new TreeSet (originalList); 时间=ListtempList new ArrayList (); tempList.addAll (treeSet);//,treeSet 默认的排序为升序,根据实际情况添加是否需要反排的序 Collections.reverse (tempList);<强> Java实现对列表去重后排序强>
Junit测试列表去重及排序源码
package com.gjnote.test.array; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.HashSet; import 并不知道; import java.util.Set; import java.util.TreeSet; import org.junit.Before; import org.junit.Test;/* * *,Test 类 * List 数组去重,元素排序 * *,@version 1.0 * @author www.gjnote.com * */public class  TestListArraySort { private ListoriginalList =,空; @Before public void 设置(),throws Exception { 时间=originalList new ArrayList (); for (int 小姐:=,10000;,小姐:和gt;, 0;,我——),{ originalList.add (“element", +, i);//,add repeat 元素 如果小姐:%,2,==,0),{ originalList.add (“element", +, i); } } }/* * *,输出List 元素 *,@param 列表 */private void  outputList (List 列表),{ for (int 小姐:=,0;,小姐:,lt;, list.size();,我+ +),{ System.out.println (list.get (i)); } }/* * *,使用,Collections.sort(列表,比较器(){}); *,排序,推荐方法 */private void  collectionsSortElement (List 列表),{ long start =, System.currentTimeMillis (); Collections.sort(列表,new 比较器(),{ @Override public int 比较(o1, String String o2), {//,根据实际排序需要调整compareTo对象顺序 return o2.compareTo (o1群); } });//outputList (tempList); System.out.println (“Collections.sort:“ +,(System.currentTimeMillis(),安康;开始),+,“ms"); }/* * *,测试,使用的循环遍历去除重复元素 *,Collections.sort排序 */@Test public void  testForLoopRemoveRepeatElement (), { System.out.println (“testForLoopRemoveRepeatElement"); long start =, System.currentTimeMillis (); List tempList =, new ArrayList ();//,去除重复元素 时间:for (String String originalList), { if (! tempList.contains (string)), { tempList.add(字符串); } }//,排的序 collectionsSortElement (tempList);//outputList (tempList); System.out.println(“使用的循环遍历列表,去除重复元素:,“ +,(System.currentTimeMillis(),安康;开始),+,“ms"); }/* * *,测试,使用集去重; *,使用Collections.sort(列表,比较器(){});排序 * */@Test public void  testSetRemoveRepeatElement (), { System.out.println (“testSetRemoveRepeatElement"); long start =, System.currentTimeMillis ();//,先排序,(理论值:先排序后去重会比后排序效率更高) collectionsSortElement (originalList);//,Set 利用组元素唯一性,去重 null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null使用Java怎么对数组去重与排序