黑马程序员技术交流社区
标题:
数组去除重复元素
[打印本页]
作者:
wuyusi
时间:
2015-6-3 00:44
标题:
数组去除重复元素
import java.util.*;
class GetSingle
{
public static void main(String[] args)
{
int arr []={1,2,4,5,7,7,8,4,7,3,8,9,2};
//定义一个LinkedList集合,后面要进行删除
LinkedList link1 = new LinkedList();
//遍历数组,将数据存入集合
for (int x = 0;x<arr.length ;x++ )
{
link1.add(arr[x]);
}
//定义另一个LinkedList集合用于存放新数据
LinkedList link2 = new LinkedList();
//迭代原集合,将不重复的数据存入新集合
Iterator it =link1.iterator();
while(it.hasNext())
{
Integer si= (Integer)it.next();
while(!(link2.contains(si)))
link2.add(si);
}
System.out.println(link2.toString());
}
要睡觉了,就写到这里,以后再改进,加上泛型,并将重复元素出现的次数打印
作者:
ZYZQ
时间:
2015-6-3 00:53
何不考虑Set
作者:
经济
时间:
2015-6-3 07:41
思路不错,前几天我也写了一个去除数组重复元素的方法,你可以去点评一下
作者:
wuyusi
时间:
2015-6-3 08:05
ZYZQ 发表于 2015-6-3 00:53
何不考虑Set
因为考虑到set无序,不方便结果与原数组对照
作者:
嘉Ming
时间:
2015-6-3 09:58
不错,学习了,加油
作者:
tougboy
时间:
2015-6-3 10:51
我面试的时候碰到就是这个题目
作者:
想要那片海
时间:
2015-6-3 17:13
第一个for那里可以直接用List list1= Arrays.asList(arr); 用数组工具类的asList 方法将数组转为集合比较简单
作者:
想要那片海
时间:
2015-6-3 18:17
不过我刚刚注意到一个问题,用数组工具类的数组变集合的方法,如果要转换基本数据类型的数组,只会把数组的地址值存入集合,但是如果是基本数据类型包装类的数组的话,就会直接把数组中的元素存入集合,所以要int[ ] 型的还是使用for循环存如集合更实际,Integer[ ]可以使用数组工具类,误导你了,不好意思哈
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2