黑马程序员技术交流社区
标题:
来一个去重复元素的
[打印本页]
作者:
edithe
时间:
2015-6-7 18:49
标题:
来一个去重复元素的
package demos;
import java.util.Arrays;
import java.util.HashSet;
/**
* 关于去重复元素
* @author lizewen
*
*/
public class Repeat {
public static void main(String[] args) {
int[] arr = {4,2,4,6,1,2,4,7,8};
//方式一:用set集合可以自动去重复
HashSet<Integer> nums = new HashSet<Integer>();
for(int a :arr){
nums.add(a);
}
//发现打印的结果和要求不同,只能换一种方式了-----但是有些同学还没学到集合---那么请可以看方式二
System.out.println(nums);
//方式二:用新数组存储去重复的元素
int count = 0;//用来记录重复元素的个数
for(int i = 0;i<arr.length-1;i++){
for(int j=i+1;j<arr.length-i-1;j++){
if(arr[i]==arr[j])
count++;
}
}
int index = 0;
int[] newArr = new int[arr.length-count];//建一个新数组存储去重复的元素
//把原来的数组元素添加到新的数组中(去重复),思路:把原来数组的每一个元素都尝试添加,如果新数组中没有该元素,则添加,如果有,则不添加
for(int i = 0;i<arr.length;i++){
boolean flag = true;//用来判断新数组中是否已有该元素
for(int j=0;j<newArr.length;j++){
if(arr[i]==newArr[j]){
flag = false;
}
}
if(flag){
newArr[index++] = arr[i];
}
}
System.out.println(Arrays.toString(newArr));
}
}
复制代码
作者:
storer
时间:
2015-6-7 19:02
感觉有点复杂
作者:
施洋
时间:
2015-6-7 19:19
第一种简单
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2