关于OOP中集合的理解
来源:互联网 发布:java导出文件到桌面 编辑:程序博客网 时间:2024/05/26 02:20
集合框架
Collection 接口 Map接口
List接口 Set接口
ArrayList类 LinkedList类 HashSet类 TreeSet类 HashMap类 Hashtable类
List接口定义
List接口是Collection的子接口,它可以保存重复、有序的元素
常用子类有ArrayList Vector
(1)ArrayList
List list=new ArrayList();//可以往集合里面添加对象,字符串,数字等,但是它线程异步,性能较高。
(2)LinkedList
LinkedList表示的是链表操作类,它同时实现了List和Queue接口,存放元素按照先进先出方式排序
LinkedList linkedList=new LinkedList();
(3) Vector
Vector是线程同步的,性能较低,且当容量需要增长时,默认增长为原来的一倍,而ArrayList是原来的一半
List list=new Vector(5);//List接口引用实现类的实例
(4)栈
栈继承了Vector,且对Vector进行了拓展,并采用先进后出的数据存储方式
Stack stack=new Stack();实例化一个栈对象
stack.push("java");
Set接口常用的子类
HashSet类是Set接口的子类,其储存方式是无序不重复的,
Set set=new HashSet();
set.add("apple");//添加元素
Iterator
Iterator是迭代集合的迭代器主要方法有 hasNext() 、 next()
//调用set.Iterator方法返回对set中的元素进行迭代的迭代器
Iterator iterator=set.iterator();
//判断迭代器中是否有元素可迭代
while(iterator.hasNext()){
//iterator.next()是返回迭代器的下一个元素
System.out.println(iterator.next());
Map接口
Map接口不同于Collection、Set、List接口,他是单一操作一对对象,其中的每个元素使用键值对(key-value)的形式存储于集合中的,但是同时又必须设置key和value的类型
(1)HashMap
HashMap采用键值对形式存储元素,且元素存储后是无序的,HashMap中不允许出现重复键,但是可以出现空键和空值
Map map=new HashMap();
map.put("bookName","java");
map.put(null,"nothing");//出现空键
map.put("price",50);
map.put("price",80)//出现重复键时,后面的一个键会覆盖前面的一个键
Collection col=map.values();//取出Map中全部的value
然后进行迭代循环
while(iterator.hasNext()){
//iterator.next()是返回迭代器的下一个元素
System.out.println(iterator.next());
Hashtable
采用键值对的形式存储元素,其元素的存储是无序的,键不允许重复且不允许出现空键和空值,线程同步,效率较低。
- 关于OOP中集合的理解
- 关于java中集合类的理解
- 关于java中集合类的理解
- 关于JAVA中集合对象的编辑
- 关于Java中集合的简介
- 关于Java中集合类的contains方法
- oracle中集合的方法
- C#中集合的排序
- FreeMarker中集合的判断
- java中集合的知识点
- Spring中集合的注入
- Flex中集合的类型
- java中集合的遍历
- python中集合的妙用
- Python中集合的创建
- java中集合的总结
- java中集合的分类
- Oracle中集合的使用
- 【HDU】-4006-The kth great number(优先队列,好)
- 3.不使用(a+b)/2这种方式,求两个数的平均值。
- Dropot理解
- 理解二叉查找树
- 关于try,finally中return的顺序
- 关于OOP中集合的理解
- Matlab查找当前目录及子目录下所有文件
- editText设置背景后,被软键盘覆盖
- Linux下统计当前文件夹下的文件个数、目录个数
- HDU-1686 Oulipo(kmp模板题)
- caffe中的layers
- hdu 3842 Machine Works
- AsyncTask的用法
- 二叉树的建立与遍历