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

本文探讨了责任链模式在解决提高工资问题上的应用,并通过实例展示了如何使用责任链来处理不同级别的请求。同时,介绍了使用HashSet来去除列表中重复数据的方法,包括重写equals方法以确保唯一性。

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.youkuaiyun.com/Evankaka/article/details/43210027



http://blog.youkuaiyun.com/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有完全一样的接口。







评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值