--------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------

1.队列:先进先出

175154815.jpg

运行结果:


zhangsan

lisi

wangwu


2.栈:先进后出

175409480.jpg

结果:

lisi

wangwu

zhangsan

3. 去除重复元素

思路:(ArrayList)

将集合中的元素一个一个的读取出来,然后放到一个新的集合中,在放到新的集合中之前,看新的集合中是否存在此元素,如果存在此元素,那么就不存入,要是不存在,则存到新的集合中。

175615630.jpg

运行结果:

有重复元素的集合[java01, java02, java03, java01, java03, java04]

去掉重复元素的集合[java01, java02, java03, java04]

4.存储自定义对象

自定义类,然后把其对象存储到集合中,然后去除相同的元素,我们要从写equals()方法,让他们按照自己定义的比较方式比较,名称和名字都一样,那么这两个对象才相同,否则不是同一个对象。

当集合进行判断是否包含(contains())此对象的时候,默认的调用了对象的equals()方法

import java.util.ArrayList;

import java.util.Iterator;

class person{

private String name;

private int age;

public person(String name,int age){

this.name=name;

this.age=age;

}

public String getName(){

return name;

}

public int getAge(){

return age;

}

public boolean equals(Object ob){

if(!(ob instanceof person)){

return false;

}

person p=(person)ob;

return this.name.equals(p.name)&&this.age==p.age;

}

}

public class ArrayListDome {

public static void show(ArrayList list){

Iterator it=list.iterator();

while (it.hasNext()){

person p=(person)it.next();

System.out.println(p.getName()+"-------"+p.getAge());

}

}

public static ArrayList singList(ArrayList l){

ArrayList newlist=new ArrayList();

Iterator it=l.iterator();

while (it.hasNext()){

Object ob=it.next();

if(!newlist.contains(ob)){

newlist.add(ob);

}

}

return newlist;

}

public static void main(String[] args) {

ArrayList ps=new ArrayList();

ps.add(new person("zhangsan",23));

ps.add(new person("zhangsan",23));

ps.add(new person("wangwu",22));

ps.add(new person("wangwu",22));

ps.add(new person("zhangsan",23));

ps.add(new person("lisi",27));

ps.add(new person("zhangsan",23));

ps.add(new person("zhangsan",23));

ps.add(new person("zhangsan",23));

System.out.println("含有重复的元素");

show(ps);

System.out.println("---------------------");

System.out.println("取出重复的元素");

ps=singList(ps);

show(ps);

}

}

结果:

含有重复的元素

zhangsan-------23

zhangsan-------23

wangwu-------22

wangwu-------22

zhangsan-------23

lisi-------27

zhangsan-------23

zhangsan-------23

zhangsan-------23

---------------------

取出重复的元素

zhangsan-------23

wangwu-------22

lisi-------27




--------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------