定义一个功能将ArrayList 集合中的重复元素删除

ArrayList 集合中是允许储存重复元素的

import java.util.ArrayList;
import java.util.Iterator;
//定义一个功能将ArrayList 集合中的重复元素删除
public class ArrayListDemes2
{public static void main(String[] args) {// 新建一个容器ArrayList  a = new ArrayList();//调用自定义方法向集合中添加元素addelements(a);//调用自定义方法打印集合printArrayList(a);//ArrayList 中是可以添加重复元素的//调用自定义方法除集合中的重复元素System.out.println("--------------------------------------");ArrayList a1 = removeRepeatElement(a);printArrayList(a1);}//自定义一个打印集合元素的方法private static void printArrayList(ArrayList a) {Iterator it = a.iterator();while(it.hasNext()){Studenti s = (Studenti)it.next();System.out.println(s.getName()+":"+s.getAge());}}//定义一个删除集合中重复元素的方法private static ArrayList removeRepeatElement(ArrayList a) {ArrayList al = new ArrayList();Iterator it = a.iterator();while(it.hasNext()){Studenti s = (Studenti) it.next();if(!(al.contains(s))){//contains 方法依靠的是equals 方法al.add(s);}}return al;}//定义向集合中添加元素的功能private static void addelements(ArrayList a) {a.add(new Studenti("kkk",22));a.add(new Studenti("sss",22));a.add(new Studenti("www",22));a.add(new Studenti("kkk",22));a.add(new Studenti("kkk",22));}}
class Studenti
{private String name;private int age;Studenti(String name ,int age){this.name=name;this.age = age;}public int getAge(){return age;}public String getName(){return name;}public String toString(){return "the student name : +name "+"  and  age is : "+ age;}public int hashCode(){return name.hashCode()+age*10;}public boolean equals(Object obj){if(this == obj)return true ;//同一个对象放两次,直接返回trueif(!(obj instanceof Studenti))throw new ClassCastException("类型错误");Studenti p = (Studenti)obj;return this .name.equals(p.name) && this.age == p.age;}}

运行程序:

java——定义一个功能将ArrayList 集合中的重复元素删除(java集合七)相关推荐

  1. java定义一个长方形类,该类中具有长方形长宽两种属性,并具有相应的构造方法属性访问方法,计算长方形的周长和面积的方法,要求输出长是5,宽是4的长方形

    定义一个长方形类,该类中具有长方形长宽两种属性,并具有相应的构造方法 属性访问方法,计算长方形的周长和面积的方法,要求输出长是5,宽是4的长方形 public class test3 {public ...

  2. Java定义一个数组,输出数组中的最大值和最小值

    题目 定义一个数组,输出数组中的最大值和最小值 public class TestArray1 {public static void main(String[] args) {int[] a = n ...

  3. java定义一个类显示没有_Java 中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。_学小易找答案...

    [单选题]关于 Java 语言叙述错误的是( ). [判断题]类中 static 修饰的变量或方法,可以使用类名或对象的引用变量访问. [命名题]命名下列化合物, [单选题]急性胰腺炎的主要临床表现是 ...

  4. Java写一个excel工具类_Java中Excel写操作工具类--Java免费学习网

    核心提示:package com.common.excel;import com.common.excel.exception.WriteExcelException;import jxl.Workb ...

  5. c++删除数组中重复元素_PG13中的功能—B树索引中的重复数据删除

    PostgreSQL 13 Beta 1版本于2020年5月21日发布,PostgreSQL 13 Beta 2版本于2020年6月25日发布.虽然Beta 版本中依旧包含一些错误,但是它总是几乎涵盖 ...

  6. 去除List集合中的重复元素,并保持原有数据的初始顺序

    private static List<String> toRepeat(List<String> list) {//定义一个Set集合Set<String> se ...

  7. 算法-- 删除排序链表中的重复元素(Java)

    题目: 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 .返回 已排序的链表 . 示例 1: 输入:head = [1,1,2] 输出:[1,2] 示例 2: 输入: ...

  8. python list去重并删除某些元素_使用Python实现list(列表)中的重复元素删除,例如: X= [1,1,2,a,a,[1,2,3]] 去重后:X= 「1,2,a,[1,2...

    题目要求的实质是列表内部元素的去重,有两种思路:第一种,删除的思路,判断列表中的元素是否出现重复,如果有重复,删除重复出现的元素直到剩下最后一个:第二种,添加的思路,新建空列表,将新列表中不包含.原列 ...

  9. java设计一个顺序表类的成员函数,用java编写一个逐个输出顺序表中所有数据元素的成员函数...

    import java.util.ArrayList; import java.util.List; public class Test { /** * @param args */ public s ...

最新文章

  1. ABP理论学习之多租户
  2. 硬核图解!断网了,还能ping通 127.0.0.1 吗?为什么?
  3. 看日本雅-miyavi演唱会
  4. windows mysql kip grant tables_数据库mysql数据库mysql: [ERROR] unknown option '--skip-grant-tables'...
  5. 高通似乎成了台积电和三星在先进工艺上暗战主角
  6. HIVE SQL DDL语句实例
  7. 单片机C语言程序设计基础知识全解析
  8. 科学研究方法与论文写作-课后习题答案
  9. TTL转HDMI 1.4,性能提升,pin to pin 芯片LT8618SXB
  10. wp8通过WebClient从服务器下载文件
  11. 从零开始嵌入聊天机器人服务(小白适用)
  12. 22:紧急措施http://noi.openjudge.cn/ch0107/22/
  13. transforms常用函数简介
  14. 清明节微信公众号图文排版有哪些经典素材?
  15. web前端学习第十四~十八天
  16. 计算机毕业设计 SSM的房屋租赁管理系统(源码+论文)
  17. vscode win10笔记本 蓝屏_联想拯救者Win10蓝屏0xc000000d的解决办法
  18. 重装系统 linux启动windows系统文件,重装Windows系统后,Linux系统启动引导失败
  19. 蓝光影视媒体菜单结构浅析[原版加字幕保留花絮/主菜单/弹出菜单并分割对应PS3]...
  20. mysql数据库的空间释放

热门文章

  1. 谷歌官方推出 TensorFlow 中文视频:机器学习从零到一
  2. 平均每个员工2000万!苹果为啥买下这家刚成立3年的AI创业公司?
  3. 【AI项目商务合作】图像拼接
  4. 商汤使用AutoML设计Loss函数,全面超越人工设计
  5. 计算机等级考试二级Python讲座(二)
  6. 前沿 | 谷歌用深度学习进行深度预测
  7. 人工智能 21 个子领域高被引学者Top 3
  8. 一文让你掌握神经网络训练技巧
  9. 谈谈复杂多分类问题上的一些个人理解
  10. MapReduce论文