例如:原始数组是{4,2,4,6,1,2,4,7,8},得到结果{4,2,6,1,7,8}
private static void method() {
int[] arr ={4,2,4,6,1,2,4,7,8};
//实例化set集合对象,泛型限定为integer
Set<Integer> set = new HashSet<Integer>();
//取出数组中的进行判断
for (int i = 0; i < arr.length; i++) {
//如果set不包含当前元素,则把该数添加到set集合中
if (!set.contains(arr[i])) {
set.add(arr[i]);
}
}
//调用toArray方法将set集合转换为数组
Object[] newArr = set.toArray();
//调用Arrays工具类的toString方法转换为字符串打印数组中元素
System.out.println("原始数组是"+Arrays.toString(arr));
System.out.println("得到结果是"+Arrays.toString(newArr));
}
能达到要求,但是得到的结果是这样的
原始数组是[4, 2, 4, 6, 1, 2, 4, 7, 8]
得到结果是[1, 2, 4, 6, 7, 8]
为什么去掉了重复元素后,新的数组被排序了?不知道在那里被排序了,set集合的toArray()方法不具有排序功能
|