收藏私塾在线
 

欢迎您来到私塾在线网!   

请登录! 

免费注册 


maorun的笔记
状态: 离线
人气:216545
访问用户量:484
笔记经验:
总积分:1419
级别:普通会员
搜索本笔记
ta的交流分类
ta的交流主题贴(4)
ta的所有交流贴(31)
ta的全部笔记
全部笔记(8)
未分类笔记(8)
存档
2014-02(1)
2013-11(4)
2013-10(3)

2013-10-06 08:45:35
java集合知识点
浏览(9729)|评论(0)   交流分类:Java|笔记分类: 未分类

1、Set默认加载使用重复对象,若重写hashCode(),equals()方法,则可以去重复重复对象若是String类型,为什么没有,因为String类已经重写了这两个方法。
TreeSet是排序的Set ,HashSet是散列的,list是有序的。
 2、list是异步的实现,性能高,但是线程不安全,而Vector是同步,线程安全,性能较低两个子接口ArrayList,LinkList,在类集中只有List接口才能双向输出。
3、TreeSet可以直接对String的类型对象排序,但是若是对象排序,则必须依靠comparable来实现排序
 4、Sort开头的都可以排序,规则是按比较器接口comparable的compareTo()方法实现。
 5、Iterator的用法:所有类集的输出,首先想到使用该接口。
先用Collecction类集合的iterator()获取该接口的实例,然后使用while(iter.hasNext()){
          iter.next()自动获取元素,指针自动下移
    }----自动先判断,然后输出。
使用iterator接口删除方法,循环会跳出。输出是从前往后输出,单方向的。所以要想双向输出 必须使用ListIterator接口。核心方法hasNext()向后,hasPrevious()向前,next()取出后一元素,previous()前一元素但是不能通过Collection.iterator()直接实例化,该接口只能通过List接口的listIterator()方法实例化 该接口只能先从前往后输出之后,才能从后往前输出,结果否则会输出不了。6、Enumeration接口是一个老接口,有两个核心方法。hasMoreElments(),nextElement()获取元素,它一般操作Vector类只有vector类才有,其他都没有,所以Vector.elements()获取实例。
                                         for(enu.hasMoreElements())
                                         {
                                             enu.nextElement()
                                         }
                                         for(对象类型  对象  Collection)
                                         {
                                             
                                         }
7、四种输出:iterator,ListIterator,foreach,Enumeration输出。 最重要就是Iterator
8、Map接口:在Collection接口中唯一的一个存放双值,每次操作一对对象,key-value
 public interface Map<K,V> MapEntry接口Map.Entry对象,即map里面存放是一个个MapEntry对象。Map接口基本子类有:HashMap,Hashtable,TreeMap,SortedMap,WeakHashMap,IdentityMap
 通过put方法增加一个MapEntry对象,通过map.get(key)取出值,若没有返回null
containsKey(),containsValue()是否有键,值若输出全部的Key,
  Set keys = map.keySet();//得到全部的键的一个SET集合,此时就可以用迭代
 Iterator itkey = keys.iterator();
      while(itkey.hasNext())
           {
                         syso: itkey.next();
          }
         若输出全部的Value
 Set values = map.values();//得到全部的键的一个SET集合,此时就可以用迭代
                                             Iterator it = values.iterator();
                                             while(it.hasNext())
                                             {
                                                 syso: it.next();
                                             }
Hashtable接口:属于旧的类,与Vector推出的时间一致。该接口完全跟HashMap一致。区别在于:HashMap性能高,异步方式输出,非线程安全;Hashtable性能低,同步方式输出,线程安全。TreeMap:与TreeSet类似,可以排序,按KEY排序。若要对KEY排序,对象要实现comparable接口指定KEY排序规则。 WeakHashMap接口:弱引用,如果一个MAP里头的元素长时间不用,原始的HashMap接口是不能删除的, 若要删除长时间不用的元素,可以使用该接口。

对象使用的4个级别:强,弱,软,虚。
MAP注意事项:
第一种以iterator输出4步骤
 Set<MapEntry<K,V>> allSet = map.entrySet(); //获取一个mapEntry的SET集合
                                         Iterator  it = allSet.iterator(); //迭代输出每一个对象
                                         while(it.hasNext())
                                         {
                                             Map.Entry(K,V) entry = it.next();//每一个元素都是一个mapentry对象
                                             entry.getKey();//然后分离KEY
                                             entry.getValue();//分离VALUE
                                         }
                                         第二种:以foreach
                                         for(Map.Entry(K,V) entry map.entrySet())
                                         {
                                              entry.getKey();entry.getValue();
                                         }

精品视频课程推荐

Java数据结构和算法精讲版
本课程专注于数据结构和算法的内容,使用Java来进行代码示例,不空洞的讲解概念和理论,重点放在代码的实现和示例上。 从零开始、全面系统、成体系的讲解数据结构和基本算法,循序渐进的讲述构建软件系统所常见的数据结构和算法。

研磨设计模式——跟着cc学设计系列视频教程
本视频课程是北京Java私塾原创精品书籍《研磨设计模式》一书的配套学习视频,由《研磨设计模式》的第一作者CC录制 课程目标:全面、系统的掌握GoF设计模式的知识,达到可以在实际项目开发中运用的能力 技术要点:如何实现可配置、如何实现缓存以及缓存的管理、如何实现用缓存来控制多实例的创建、如何实现参数化工厂、 如何实现可扩展工厂、如何实现原型管理器、如何实现Java的静态代理和动态代理、如何实现多线程处理队列请求、 如何实现命令的参数化配置、可撤销的操作、宏命令、队列请求和日志请求、如何实现翻页迭代、如何检测环状结构、 如何实现通用的增删改查、如何模拟工作流来处理流程、如何实现简单又通用的XML读取、如何实现模拟AOP的功能......

log4j&slf4j基础实战视频教程
学习在java项目中使用log4j、jdk自带的日志框架和slf4j

Javascript基础视频教程
JavaScript的内置对象--Array、String、Date、Math等,可以通过DOM对象进行对象控制,创建控制菜单及复选框的控制,创建二级联动列表框及列表框选项的移动,JavaScript项目,创建基于JS的商品管理系统。

XML基础视频教程
创建规范的XML文档,DTD的作用,并且可以根据要求创建私用的DTD,通过JavaScript解析XML DOM

浏览(9729)|评论(0)   交流分类:Java|笔记分类: 未分类

评论(0)
请登录后评论 登录

关于我们 | 联系我们 | 用户协议 | 私塾在线服务协议 | 版权声明 | 隐私保护

版权所有 Copyright(C)2009-2012 私塾在线学习网