打字猴:1.70045285e+09
1700452850 //把一个List包装成一个lazy类型
1700452851
1700452852 List<String>lazy=LazyList.decorate(new ArrayList(),
1700452853
1700452854 new Factory(){
1700452855
1700452856 public String create(){
1700452857
1700452858 return”A”;
1700452859
1700452860 }
1700452861
1700452862 });
1700452863
1700452864 //访问了第4个元素,此时0、1、2元素为null
1700452865
1700452866 String obj=lazy.get(3);
1700452867
1700452868 //追加一个元素
1700452869
1700452870 lazy.add(“第五个元素”);
1700452871
1700452872 //元素总数为5个
1700452873
1700452874 lazy.size();
1700452875
1700452876 双向Map
1700452877
1700452878 JDK中的Map要求键必须唯一,而双向Map(Bidirectory Map)则要求键、值都必须唯一,也就是键值是一一对应的,此类Map的好处就是既可以根据键进行操作,也可以反向根据值进行操作,比如删除、查询等,示例代码如下:
1700452879
1700452880 //key、value都不允许重复的Map
1700452881
1700452882 BidiMap bidiMap=new TreeBidiMap();
1700452883
1700452884 bidiMap.put(1,“壹”);
1700452885
1700452886 //根据key获取value
1700452887
1700452888 bidiMap.get(1);
1700452889
1700452890 //根据value获取key
1700452891
1700452892 bidiMap.getKey(“壹”);
1700452893
1700452894 //根据value删除键值对
1700452895
1700452896 bidiMap.removeValue(“壹”);
1700452897
1700452898 Apache commons项目还有很多非常好用的工具,如DBCP、net、Math等,但是这些包有个缺点,大部分更新比较缓慢,有些扩展类甚至可以说比较陈旧了,例如Collections中的大部分集合类不支持泛型,这让一些“泛型控”们很不舒服,总想自己再封装一下,提供一些泛型支持,这就需要读者在项目开发中自行考虑了。
1700452899
[ 上一页 ]  [ :1.70045285e+09 ]  [ 下一页 ]