博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Collection
阅读量:7103 次
发布时间:2019-06-28

本文共 1897 字,大约阅读时间需要 6 分钟。

  <1>Collection(只能存放一个值)

  |- 主要功能:用于输出使用

  |- 子接口:List(允许有重复的元素,而且加入的顺序就是输出的顺序)

  |- 子类:ArrayList,是在Java 2之后推出的,是新的类,是使用异步处理方式,其性能较高

  |- 子类:Vector,是在JDK 1.0的时候就推出,因为是旧的类,有很多List所没有的功能,是使用同步处理方式,其线程安全性较高,会比较慢。使用Vector除了可以使用Iterator输出之外,也可以使用Enumeration进行输出。两者是通用的。Vector子类允许直接使用addElement(Object obj),也是可以向集合中加入元素的。

  |- 自己新增的方法:

  |- 取每一个对象:public Object get(int ind) ;

  |- 子类:Stack(栈)

  |- 子接口:Set(不允许有重复元素,重复元素会替换)?如何可以区分重复元素呢?

  |- 子类:HashSet:是无序列存放

  |- 子类:TreeSet:有序存放,是通过Comparable接口完成的

  |- 常用方法:

  |- 增加一个对象:public boolean add(Object obj)

  |- 取得类集的长度:public int size() ;

  |- 判断集合中的内容是否为空:public boolean isEmpty()

  |- 删除一个对象:public boolean remove(Object obj) :就必须牵扯到对象的比较状态。

  |- 实例化Iterator对象:public Iterator iterator() ;

  <2>JDK 1.5提供了一个方便的输出操作:for…each语句。

  <3>Iterator接口输出是最常见的

  |- 常用方法

  |- public boolean hasNext():判断是否有下一个元素

  |- public Object next():取出下一个元素

  |- 子接口:ListIterator,可以进行双向输出,只对于List接口有用

  |- 常用方法:具备了Iterator接口中的全部内容

  |- public boolean hasPrevious()

  |- public Object previous()

  <4>Enumeration(在1.5之后也加入、泛型支持哈~)

  |- 常用方法:

  |- 判断是否有下一个元素:public boolean hasMoreElements()

  |- 取出元素:public Object element()

  5、 Map(存放一对值)

  |- 功能:与Collection的功能不一样,Map的主要功能是用于查找使用的。

  |- 注意点:

  |- 使用Map操作时,不能直接使用Iterator进行输出。

  |- 而且里面不能有重复key。

  |- 如果非要使用Iterator进行输出,则必须按以下的步骤进行操作:

  |- Map --> Set --> Iterator --> Map.Entry --> key与value的分离

  |- 常用子类:

  |- HashMap:无序存放,是新的类,是JDK 1.2时推出的,是异步处理,性能较高

  |- Hashtable:是旧的类,是JDK 1.0时推出的,是线程安全的,性能较低

  |- Properties(重点):属性文件操作类

  |- TreeMap:有序存放

  |- 常用方法:

  |- 向集合中保存数据:public Object put(Object key,Object value):返回的是value

  |- 从集合中查找数据:public Object get(Object key):根据key查找。

  |- 将Map数据变为Set实例:Set> entrySet()

  |- 将全部的key变为set实例:Set keySet()

  |- 将全部的vlaue变为Collection接口实例:Collection values()

  |- Map.Entry:保存key与value

  |- public Object getKey()

  |- public Object getValue()

转载于:https://blog.51cto.com/14311959/2394162

你可能感兴趣的文章
nginx 添加 ssl模块
查看>>
Linux之搭建memcache缓存服务器(二)
查看>>
Python3.5修炼手册3
查看>>
通过数据库来显示迁移文章
查看>>
IPv4地址
查看>>
X Window 系统的窗口显示原理
查看>>
我的友情链接
查看>>
win2003 自动注销已经断开的会话,已防止共享文件被他人编辑而不能修改
查看>>
CentOS 7.0 安装jdk-7u79-linux-x64.tar.gz 新手推荐
查看>>
Flask+uwsgi+Nginx+Ubuntu部署
查看>>
初探 MySQL 的 Binlog
查看>>
HP SmartStart CD ISO下载地址
查看>>
域控制器更改IP
查看>>
利用自定义Java注解实现资源注入
查看>>
多维地址
查看>>
rpm打包mysql5.5
查看>>
《Effective C++》之条款33:避免遮掩继承而来的名称
查看>>
现代软件工程 作业 1 个人项目
查看>>
我的友情链接
查看>>
jdk1.7升级为1.8
查看>>