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 ...
随机推荐
- Android手势识别总结
一:首先,在Android系统中,每一次手势交互都会依照以下顺序执行. 1. 接触接触屏一刹那,触发一个MotionEvent事件. 2. 该事件被OnTouchListener监听,在其onTouc ...
- S3C2440串口及其中断系统详解
个独立异步串行I/O(SIO)端口,每个都可以是基于中断或基于DMA模式的操作.换句话说,UART可以通过产生中断或DMA请求来进行CPU和UART之间的数据传输. 字节的FIFO给发送和接收. 字节 ...
- 将ADS1.2的工程迁移到KEIL上-基于2440
裸机程序应该是一个很好的选择 1. 不拷贝启动代码,因为我们用自己的启动代码 2. 建立工程目录分级,建立完成后如下所示 拷贝相应代码到对应目录中 Option中拷贝 Core中拷贝 建立 ...
- JQuery中根据表单元素动态拼接json 字符串
// <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.o ...
- Android实现渐显按钮的左右滑动效果
本示例演示在Android中实现带渐显按钮的左右滑动效果. 关于滑动效果,在我的上一篇博文中提到过,有兴趣的朋友可以访问: http://www.cnblogs.com/hanyonglu/archi ...
- make 要点简记
make 要点简记 1.隐式推导 make可以自动推导文件及其文件依赖关系后面的命令,所以我们没有必要在每一个.o文件后面都写上类似的命令,因为make 会自动识别并且自动推导命令. objects ...
- UVa 10258 - Contest Scoreboard
题目大意:关于acm竞赛排名的题目,对于参赛者首先按做出的题目排名,然后是罚时,最后是编号. 多关键字域排序问题. #include <cstdio> #include <cstri ...
- java系列--HTTP协议
一.HTTP请求信息 请求行 请求头 空行 消息体 1.防盗链: 枚举类型: 二.中文乱码问题 1.Get提交 String username = request.getParameter(" ...
- Spring boot+CXF开发WebService
最近工作中需要用到webservice,而且结合spring boot进行开发,参照了一些网上的资料,配置过程中出现的了一些问题,于是写了这篇博客,记录一下我这次spring boot+cxf开发的w ...
- 关于java中的批注
J2SE 提供的最后一个批注是 @SuppressWarnings.该批注的作用是给编译器一条指令,告诉它对被批注的代码元素内部的某些警告保持静默. 一点背景:J2SE 5.0 为 Java 语言增加 ...