JAVA基础笔记(十四)类集
来源:互联网 发布:windows phone 输入法 编辑:程序博客网 时间:2024/05/01 01:07
JAVA 类集Collection为保存单值数据的最大父接口1.5:1.5之后为Collection接口设置了一个Iterable父接口; public boolean add(E e)像集合中追加数据; clear,contains,remove,size, toArray; public Iterator<E>iterator();为Iterator接口实例化; Collection 接口下的两个子接口 List子接口:数据允许重复,保存追加顺序; Set子接口:数据不允许重复,内容需要重新整理;List子接口对Collection接口做了扩充: public E set(int index,E element)修改中还定索引的数据; public E get(int index)取得指定索引的数据; public ListIterator<E> listIterator()为ListIterator接口实例化; List的三个子类: ArrayList,LinkedList,Vector请解释ArrayList与LinkedList的区别ArrayList和LinkedList都属于List的子接口;ArrayList是针对于数组的包装,LinkedList是针对链表的包装;旧的子类:Vector 请解释ArrayList与Vector的区别ArrayListJDK1.2提供,属于非线程安全操作,性能更高,ArrayList支持Iterator,ListIterator,foreach输出;Vector:JKD1.0版本提供,属于线程安全操作,性能相对较低,Vector支持Iterator,ListIterator,foreach,Enumnation输出;Set接口: HashSet,TreeSet;请解释TreeSet与HashSet的区别HashSet:保存的数据无序,而TreeSet保存的数据有序;HashSet允许存放一个null,而TreeSet不允许存放null;如果要想在TreeSet中实现排序功能需要在添加的类里实现Comparable;Hash集合中对于重复元素的大小比较依靠hashCode()与equals()进行比较Tree集合实现Comparable来实现对象比较;Map集合: Map集合最大的特点就是可以以key=value的方式保存数据 Collection存数据的目的是为了输出,而Map存放数据的目的是为了查找; Map定义的方法: public V put(K key, V value)想Map集合中保存数据; public V get(Objetc key)根据Key取得对应的value数据 public boolean containsKey(objecy key)判断key是否存在; public Set<Map.Entry<K,V>>entrySet()将Map集合转为Set; public Set<K>keySet()取得所有的key在Map集合之众如果想要保存数据,那么key一定不能重复,重复则覆盖;在Map中的子类:HashMap,HashTable,TreeMap请解释HashMap与HashTable的区别HashMap是JDK1.2提供的,属于非线程安全操作,允许保存一个null,HashTable是JDK1.0提供的,属于线程安全操作,不允许任何的null保存,从JDK1.8开始没如果HashMap中的数量过大的时候,会自动将Map集合变为红黑树以保证查询速度。Iterator输出Map: Map.Entry接口提供的操作方法: public K getKey();取得key public v getValue():取得value; Map接口里有一个entrySet()方法,这个方法可已将Map变为SetMap使用Iterator输出的步骤: 利用Map中的entrySet()方法将map变为Set 利用Set中的Iterator输出 利用Iterator迭代后去除每一个Map.Entry对象,进行分离;如果要使用自定义类作为Map中的key,自定义类中就要重写HashCode,equals方法;Collection List ArrayList LinkedList Vector Set HashSet TreeSetMap HashMap hashtable TreeMap集合中的四种输出:Iterator 如果在井陉迭代数据的时候进行删除操作,就会抛出这样的异常(throws CuncurrentModification Exception)ListIterator 进行双线迭代:要通过list接口实例化 hasPrevious()判断是否右前一个元素; previous;取得前一个元素; 要进行顺序输出一次才能进行逆序输出;foreachEnumeration 古老的枚举输出: 这个接口实例化对象依靠Vector类 .hasMoreElements()判断是否有下一个元素; .nextElement()取得下一个元素;栈操作:类集里面对于栈提供了专门处理类:Stack,这个类属于Vactor,Vactor有自己的方法操作栈: 入栈:push(E item) 出栈:pop()properties:属于HashTable的子类: properties只能保存String类型的key和value; Properties的方法: 设置属性:public Object setProperty(String key, String value); 取得属性:public String getProperty(String key, String defaultValue),如果不存在返回默认值; 输出属性内容:public void store(OutputStream out, String comments) throws IOException; 输出属性内容::public void load(InputStream inStream) throws IOException。请解释Collection与Collections的区别Collection是集合的接口,定义有List,Set的接口,Collections是一个结合类的工具类,可以方便的操作List,Sep,Map等接口Stream数据流:
0 0
- JAVA基础笔记(十四)类集
- Java学习笔记(十四)IO流及网络基础
- java学习笔记(十四)
- Java学习笔记(十四)
- Java学习笔记(十四)
- Java学习笔记(十四)
- java学习笔记(十四)
- HTML5基础学习笔记(十四)
- java基础整理十四(集合一)
- 黑马程序员---JAVA基础---GUI(十四)
- JAVA基础知识点(十四)--泛型
- java 从零开始,学习笔记之基础入门<内部类>(十四)
- java 从零开始,学习笔记之基础入门<JDBC>(二十四)
- Java学习笔记(十四)--IO流
- Java培训笔记十四
- Android基础笔记(十四)- 内容提供者读取联系人
- Java_jdbc 基础笔记之十四 数据库连接(元数据)
- VB.net学习笔记(二十四)线程基础
- React实战-基于Storybook的React组件测试
- Educational Codeforces Round 4 D. Array GCD
- 《Effect C++》学习------条款08:别让异常逃离析构函数
- 和为S的两个数字
- LeetCode之Move Zeroes(Java+C)
- JAVA基础笔记(十四)类集
- 在半透明view上添加子视图也为透明解决办法
- 内部排序之快速排序(QuickSort)
- Ubuntu 14.04系统下配置固定IP地址
- RBF神经网络通用函数 newrb, newrbe
- 地址传参
- git知识点(持续更新中)
- JAVA基础笔记(十五)反射
- 正则表达式的相关前端题目