Java 去除 ArrayList 集合中的重复元素
// One practice
package Collection; import java.util.ArrayList;
import java.util.Iterator; // 去除 ArrayList 集合中的重复元素
public class ArrayListTest
{
public static void sop(Object obj)
{
System.out.println(obj);
} public static void main(String[] args)
{
ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add("java01");
arrayList.add("java02");
arrayList.add("java03");
arrayList.add("java04");
arrayList.add("java01");
arrayList.add("java02");
arrayList.add("java03"); sop(arrayList);
arrayList = singleElement(arrayList);
sop(arrayList); } public static ArrayList<String> singleElement(ArrayList<String> al)
{
// 定义一个临时容器
ArrayList newAl = new ArrayList();
Iterator iterator = al.iterator();
while (iterator.hasNext())
{
Object obj = iterator.next();
if (!newAl.contains(obj))
{
newAl.add(obj);
}
}
return newAl;
}
} // Practice Two package Collection; import java.util.ArrayList;
import java.util.Iterator; // 将自定义对象作为元素存到 ArrayList 集合中,并去除重复元素
// 比如:存人对象。同姓名同年龄,视为同一个人。为重复元素 /*
1.对人描述,将数据封装进入对象
2.定义容器,将人存入
3.取出 List集合判断元素是否相同,依据是元素的 equals 方法。
*/ class Person
{
private String name;
private int age;
Person(String name,int age)
{
this.name = name;
this.age = age;
}
// 重写 equals 方法
public boolean equals(Object obj)
{
if (!(obj instanceof Person))
{
return false;
}
Person person = (Person)obj;
return this.name.equals(person.name) && this.age == person.age;
} public String getname()
{
return name;
}
public int getage()
{
return age;
} } public class ArrayListTest2
{
public static void sop(Object obj)
{
System.out.println(obj);
} public static void main(String[] args)
{
ArrayList al = new ArrayList();
al.add(new Person("Xp01", 30));
al.add(new Person("Xp02", 35));
al.add(new Person("Xp02", 35));
al.add(new Person("Xp03", 37));
al.add(new Person("Xp04", 35));
al.add(new Person("Xp04", 35)); al = singleElement(al); Iterator it = al.iterator(); while (it.hasNext())
{
Person p = (Person)it.next();
sop(p.getname()+"::"+p.getage());
}
} public static ArrayList singleElement(ArrayList<String> al)
{
// 定义一个临时容器
ArrayList newAl = new ArrayList();
Iterator iterator = al.iterator();
while (iterator.hasNext())
{
Object obj = iterator.next();
if (!newAl.contains(obj))
{
newAl.add(obj);
}
}
return newAl;
}
}
Java 去除 ArrayList 集合中的重复元素的更多相关文章
- java集合 collection-list-ArrayList 去除ArrayList集合中的重复元素。
import java.util.*; /* 去除ArrayList集合中的重复元素. */ class ArrayListTest { public static void sop(Object o ...
- 集合框架-ArrayList练习(去除ArrayList集合中的重复元素)
1 package cn.itcast.p3.arraylist.test; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; ...
- Java基础知识强化之集合框架笔记27:ArrayList集合练习之去除ArrayList集合中的重复字符串元素
1. 去除ArrayList集合中的重复字符串元素(字符串内容相同) 分析: (1)创建集合对象 (2)添加多个字符串元素(包含重复的) (3)创建新的集合 (4)遍历旧集合,获取得到每一个元素 (5 ...
- 去除ArrayList集合中的重复自定义对象元素
要求去除ArrayList集合中重复的Student的对象(什么叫重复,所有属性值都相同叫做重复). 思路: 1.创建一个新集合 2.遍历旧集合中的每一个元素,去新集合中找这个元素,如果这个元素不存在 ...
- 如何去除List集合中的重复元素?
一.问题由来 在实际开发的时候,我们经常会碰到这么一个问题:一个集合容器里面有很多重复的对象,里面的对象没有主键,或者说忽略主键,根据业务的需求,我们需要根据条件筛选出没有重复的对象. 二.去重操作 ...
- Java基础知识强化之集合框架笔记28:ArrayList集合练习之去除ArrayList集合中的重复字符串元素(升级)
1. 需求:ArrayList去除集合中字符串的重复值(字符串的内容相同) 要求:不能创建新的集合,就在以前的集合上做. 2. 代码示例之 去除集合中重复元素,不创建新的集合: package ...
- Java去除ArrayList集合中重复字符串的案例
ArrayList去除集合中的字符串重复值 分析: A:创建集合对象 B:添加多个字符串元素 C:创建新集合 D:遍历旧集合,获取得到每一个元素 E:拿着个元素到新集合去找,看有没有 有:不进去 没有 ...
- 去掉Arraylist集合中的重复元素
package cn.collection; import java.util.ArrayList; import java.util.Iterator; import java.util.Scann ...
- 如何去除List集合中的重复元素? a,b,c,a,c,b,d,,,,,,
package com.fs.test; import java.util.ArrayList; import java.util.List; public class Listdemo { publ ...
随机推荐
- UVa 10258 - Contest Scoreboard
题目大意:关于acm竞赛排名的题目,对于参赛者首先按做出的题目排名,然后是罚时,最后是编号. 多关键字域排序问题. #include <cstdio> #include <cstri ...
- 【转】Android ListView加载不同的item布局
原创教程,转载请保留出处:http://www.eoeandroid.com/thread-72369-1-1.html 最近有需求需要在listView中载入不同的listItem布局,开始 ...
- python模块的打包setuptools
样例代码:新建test.py文件,内容如下: print "show me" 新建一个setup.py编译文件,内容如下: from distutils.core import s ...
- 在DataGrid中实现Button Command
Command="{Binding butCommand}"会默认查找ListViewItems中对象的属性,而你的ListViewItems中对象应该不包括butCommand属 ...
- SqlParameter 使用
SqlParameter[] param = new SqlParameter[] { new SqlParameter ...
- Arcgis js API使用wmts方式加载GeoWebCache中的切片地图(转载)
使用GeoWebCache的主要目的是其独立安装版能够发布arcgis的切片.我们知道,使用openlayer是调用geoserver最方便的方法,那么在发布完arcgis的切片后,怎么用arcgis ...
- 创建 Web 前端开发环境(node和npm)
Web 前端开发涉及多种工具,这里将常用工具的安装和配置进行说明,提供了详细的说明,为后继的开发创建一个坚实的基础. 本文介绍的工具有:NodeJS, NPM, Bower, Git 和 Grunt. ...
- spring mvc 与 jasper Report集成
http://blog.csdn.net/jia20003/article/details/8471169 注意其中的图片地址说明: 如果有子报表,也会到class文件夹中去寻找: 如果子报表有路径的 ...
- 数组的map方法
map方法 不支持IE6.7 .8 array1.map(fn) array1.map(fn[,thisArg]) 注意: fn 必须是函数,如果不是函数则会报错 TypeError: undefi ...
- CSS页面渲染优化属性will-change
前面的话 当我们通过某些行为(点击.移动或滚动)触发页面进行大面积绘制的时候,浏览器往往是没有准备的,只能被动使用CPU去计算与重绘,由于没有事先准备,应付渲染够呛,于是掉帧卡顿.而CSS属性wi ...