详读List,Map源码心得笔记
来源:互联网 发布:timeline软件下载 编辑:程序博客网 时间:2024/06/06 05:30
初学Java时,接触得最早的就是List,Map,Set。进入工作后在程序中经常用到的有List和Map。今天闲来无事做,看看List和Map源码,记录一些学习笔记。
从代码上看 public interface List<E> extends Collection<E>,public interface Set<E> extends Collection<E>。List,Set接口是继承了Collection<E>接口。通过查看Collection类源码,发现里面定义了一些方法
int size() 查看当前容量,
boolean isEmpty() 判断是否为空,
boolean contains(Object o) 判断是否包含Object,
Iterator<E> iterator() 返回Iterator
Object[] toArray() 将list或者set转换成Object []数组
<T> T[] toArray(T[] a)将list或set转换成指定的数组类型
boolean add(E e) 添加
boolean remove(Object o) 移除指定的结果
boolean containsAll(Collection<?> c) 方法用于判断列表中是否包含指定collection的所有元素,自己测试了下,只要是继承Collection接口的都返回true,不太清楚实际用处
boolean addAll(Collection<? extends E> c) 将另外一个集合全部加入现在集合
boolean removeAll(Collection<?> c) 清空指定的集合元素
boolean retainAll(Collection<?> c) 去两个集合的交集
void clear() 清空集合所有元素
boolean equals(Object o) 比较两个集合
int hashCode()返回列表的哈希码值。
从代码上看 public interface List<E> extends Collection<E>,public interface Set<E> extends Collection<E>。List,Set接口是继承了Collection<E>接口。通过查看Collection类源码,发现里面定义了一些方法
int size() 查看当前容量,
boolean isEmpty() 判断是否为空,
boolean contains(Object o) 判断是否包含Object,
Iterator<E> iterator() 返回Iterator
Object[] toArray() 将list或者set转换成Object []数组
<T> T[] toArray(T[] a)将list或set转换成指定的数组类型
boolean add(E e) 添加
boolean remove(Object o) 移除指定的结果
boolean containsAll(Collection<?> c) 方法用于判断列表中是否包含指定collection的所有元素,自己测试了下,只要是继承Collection接口的都返回true,不太清楚实际用处
boolean addAll(Collection<? extends E> c) 将另外一个集合全部加入现在集合
boolean removeAll(Collection<?> c) 清空指定的集合元素
boolean retainAll(Collection<?> c) 去两个集合的交集
void clear() 清空集合所有元素
boolean equals(Object o) 比较两个集合
int hashCode()返回列表的哈希码值。
1 0
- 详读List,Map源码心得笔记
- 【Java】关于Map解析List<Map<String, String>>的心得
- List and Map 学习笔记
- 笔记27--Set、Map、List
- java List,Map学习笔记
- 数组,List,Map学习笔记
- List、Set、Map的源码初级分析
- JDK 源码笔记 -- List篇
- python源码解析笔记--List
- [转]学习笔记(List and Map)
- set /list/ map 使用 学习笔记
- hibernate学习笔记(map,set,list映射)
- Android笔记六.List+Set+Map
- python笔记01--list,map使用
- C++ 笔记5:LIST 和MAP
- List,Set,Map学习笔记(1)
- java学习笔记4.13,List,Set,Map
- Go 1.9 sync Map 源码阅读笔记
- ServletContext与网站计数器
- 讓iframe自適應高度
- LeetCode 122. Best Time to Buy and Sell Stock II
- Android源码解析系列
- PHP按比例生成縮略圖片
- 详读List,Map源码心得笔记
- HDU 1213 How Many Tables
- JVM实用参数-新生代垃圾回收算法
- Android初级教程反射+AIDL+内容观察者监控黑名单号码代码模板
- jQuery 對table的基本操作
- Android 工作记录一
- 源码-PL/SQL从入门到精通-第十三章-子程序-Part 2
- 10340 - All in All
- Linux上安装JDK环境变量配置