package com.test;
import java.util.ArrayList;
import java.util.Iterator;
public class Demo4 {
public static void main(String[] args) {
/*
* LIst:有序的,可重复的
* 要求:存储的数不能重复---使用list
*
* Set:无序的,不可重复的
*/
ArrayList list = new ArrayList<>();
list.add("java1");//第一个
list.add("java2");//第二个
list.add("java2");
list.add("java4");
list.add("java5");
System.out.println(list);//[java1, java2, java2, java4, java5]
//创建一个临时的List,装去重后的元素
ArrayList list1=new ArrayList<>();
Iterator iteartor=list.iterator(); //迭代器
while (iteartor.hasNext()) {
Object object=(Object)iteartor.next();
/*
* 工作原理:当添加元素时,会让当前的元素与集合中已有的所有元素通过equals方法进行---比较,过程中
* 只要有一次返回true,就停止比较,让整个的contains方法返回true
*
* 实例:添加第二个元素时,调用equals方法的过程
* 第二个元素,equals("java1")=false 第三个元素,equals("java2")=true 停止比较
*
*/
if (!list1.contains(object)) {// ! (listl里面包含object)就在list1添加object
list1.add(object);
}
}
System.out.println(list1);//[java1, java2, java4, java5]
}
}