2.12学习内容 责任链,HashSet去除重复数据原理

public class Main {  
  
    public static void main(String[] args) {  
          
        Support evan=new HR("人力Evan");  
        Support kaka=new ZuZhang("组长kaka", 100);//组长最多能解决提高工资100的问题  
        Support bingbing=new JingLi("经理bingbing", 500);//经理最多能解决提高工资500的问题  
        Support wenwen=new DongShiZhang("董事长wenwen", 1000);//经理最多能解决提高工资500的问题  
          
        //构成一个责任链  
        evan.SetNext(kaka).SetNext(bingbing).SetNext(wenwen);  
          
        //发生的要滶提高工资的问题  
        for(int i=50;i<1200;i+=50){  
            evan.GetTrobule(new RaiseSalary(i));  
        }  
  
    }  
  
}  

责任链:http://blog.csdn.net/Evankaka/article/details/43210027



http://blog.csdn.net/xiaoyi_tdcq/article/details/43699199

hashset去除list重复数据代码:

public class TestSet {

	public static void main(String[] args) {
		List<Student> list1 = new ArrayList<Student>();
		list1.add(new Student("张三","12"));
		list1.add(new Student("张三","12"));
		list1.add(new Student("李四","12"));
		list1.add(new Student("王五","15"));
		list1.add(new Student("张三","12"));
		list1.add(new Student("张三","13"));
		System.out.println(list1.toString());
		Set<Student> set = new LinkedHashSet<Student>();
                set.addAll(list1);
                List<Student> list2 = new ArrayList<Student>();
                list2.addAll(set);
                System.out.println(list2.toString());
	}

}
Studet类要重写equals方法,原理:

http://www.cnblogs.com/hzmark/archive/2012/12/27/HashSet.html

其中一句话:

 存入Set的每个元素必须是惟一的,因为Set不保存重复元素。加入Set的元素必须定义equals()方法以确保对象的唯一性。Set不保证维护元素的次序。Set与Collection有完全一样的接口。







你可能感兴趣的:(java,学习)