黑马程序员技术交流社区
标题:
数组怎么去除重复的数字啊
[打印本页]
作者:
zhangniuren
时间:
2015-5-30 15:09
标题:
数组怎么去除重复的数字啊
数组怎么去除重复的数字啊
作者:
nbcallum
时间:
2015-5-30 15:19
存入Set集合,再转换成数组
作者:
guojiadui
时间:
2015-5-30 16:09
HashSet 与TreeSet应该度可以
作者:
csu050416
时间:
2015-5-30 16:48
数组不能删除元素的,先Arrays.asList(数组),然后用集合的方法删除相同的,再toArray()转数组。
作者:
bin2015
时间:
2015-5-30 17:06
class Demo9
{
public static void main(String[] args)
{
int[] oldArr = {1,4,9,4,1,1,7};
int[] newArr = clearRepeat(oldArr);
System.out.println("清除重复元素的数组:"+ Arrays.toString(newArr));
}
public static int[] clearRepeat(int[] oldArr){
int count = 0 ; //count变量 是用于记录重复元素的个数
//计算出重复元素的个数
for(int i = 0 ; i<oldArr.length -1 ; i++ ){
for(int j = i+1 ; j<oldArr.length ; j++){
if(oldArr[i]==oldArr[j]){
count++;
break;
}
}
}
//创建一个新的数组
int[] newArr = new int[oldArr.length-count];
int index = 0; //新数组使用的索引值。
//遍历旧数组
for(int i = 0 ; i<oldArr.length ; i++){
boolean flag = false; //该标识是用于标识取出的元素是否存在新数组中。 false默认情况是不存在 的。
int temp = oldArr[i]; //从旧数组 中取出遍历的元素
//遍历新的数组是否存在该数据
for(int j = 0 ; j<newArr.length ; j++){
if(newArr[j]==temp){
flag = true;
break;
}
}
//该元素不存在新数组中,这时候应该存储起来
if(flag==false){
newArr[index++] = temp;
}
}
return newArr;
}
}
复制代码
作者:
zhousuo28
时间:
2015-5-30 21:07
用集合吧,把数组放入集合中,再用集合转数组
作者:
mnxnm
时间:
2015-5-31 10:05
数组去重复,例如: 原始数组是{4,2,4,6,1,2,4,7,8},得到结果{4...
http://bbs.itheima.com/thread-199960-1-1.html
(出处: 黑马程序员IT技术论坛)
作者:
kmlitheima
时间:
2015-5-31 10:10
是啊,这个问题我也觉得好复杂啊!
作者:
kmlitheima
时间:
2015-5-31 10:13
是啊,这个问题我也觉得好复杂啊!
作者:
richaled
时间:
2015-5-31 11:47
用集合可能会简便写吧
作者:
edithe
时间:
2015-5-31 15:33
bin2015 发表于 2015-5-30 17:06
这代码怎么这么熟悉,连注释都这么熟
作者:
zlynnb2015
时间:
2015-5-31 17:19
只有先把数组转成toString型 ,然后用切割,最后再转成数组
作者:
bin2015
时间:
2015-5-31 18:27
edithe 发表于 2015-5-31 15:33
这代码怎么这么熟悉,连注释都这么熟
这都被你发现了,:)根据老师讲的写的
作者:
龙腾浩少
时间:
2015-5-31 20:17
用集合的话会比较简单,否则向上面那位那样也能做,注意理清楚思路:
首先,数组是定长的,也就是说,你先要判断出有多少个重复的元素,也就是要得到新数组的长度
然后再将不重复的数一个个提取出来,重新存到新的数组中,
就是这样。
作者:
fantasymaker
时间:
2015-5-31 21:36
把数组中所有的元素拿出来存到set里面, set由于不能有重复的元素, 所以所有元素都不是重复的, 然后把这个set转换为数组返回即可
作者:
zhangjnia
时间:
2015-5-31 21:37
方法还是蛮多的
作者:
守株人
时间:
2015-5-31 21:37
楼上正解
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2