标签:ash 元素 hash java集合框架 code dma print rem nsvalue
在集合框架中,集合(Collection)接口位于Set接口和List接口的最顶层,是Set接口和List接口的父接口。
List接口继承自Collection接口,他有如下特点:
1. List中的元素是有顺序的。
List通常允许重复元素。
List实现类通常支持null元素。
可以通过索引访问List对象容器中的元素。
ArrayList在概念上与数组相似,表示一组编入索引的元素,区别在于ArrayList没有预先确定的大小,其长度的可以按需增加。
以下是ArrayList 的方法摘要:
List list = new ArrayList();
boolean add(E e) 将指定的元素添加到此列表的尾部。
list.add("hello");
list.add(1);
void add(int index, E element) 将指定的元素插入此列表中的指定位置。
list.add(1, "world");
void clear() 移除此列表中的所有元素。
list.clear();
boolean contains(Object o) 如果此列表中包含指定的元素,则返回 true。
list.contains("hello");
E get(int index) 返回此列表中指定位置上的元素。
list.get(2);
int indexOf(Object o) 返回此列表中首次出现的指定元素的索引,或如果此列表不包含元素,则返回 -1。
list.indexOf("hello");
boolean isEmpty() 如果此列表中没有元素,则返回 true
System.out.println(list.isEmpty());
E remove(int index) 移除此列表中指定位置上的元素。
list.remove(2);
E set(int index, E element) 用指定的元素替代此列表中指定位置上的元素。
list.set(1, "wode");
LinkedList 是实现了双向链表功能的列表,他将列表中每个对象放在独立的空间中,而且每个空间中还保存有和上一个和下一个连接的索引。
LinkedList list = new LinkedList();
boolean add(E e) 将指定元素添加到此列表的结尾。
list.add("hello");
list.add("world");
void add(int index, E element) 在此列表中指定的位置插入指定的元素。
list.add(2,"hah");
void clear() 从此列表中移除所有元素。
list.clear();
boolean contains(Object o) 如果此列表包含指定元素,则返回 true。
System.out.println(list.contains(0));
E get(int index) 返回此列表中指定位置处的元素。
list.get(1);
int indexOf(Object o) 返回此列表中首次出现的指定元素的索引,如果此列表中不包含该元素,则返回-1。
list.indexOf("hello");
E pop() 从此列表所表示的堆栈处弹出一个元素。
list.pop();
void push(E e) 将元素推入此列表所表示的堆栈。
list.push(3);
E remove(int index) 移除此列表中指定位置处的元素。
list.remove(2);
E set(int index, E element) 将此列表中指定位置的元素替换为指定的元素。
list.set(1, 9);
Set接口也继承与Collecting接口,同时也继承了Collection接口的所有方法,它有如下特点:
HashSet类是基于哈希算法的Set接口实现,他有如下几个特点:
当遍历HashSet时,其中元素是没有顺序的。
HashSet中不允许出现重复元素。这里的重复元素是指有相同的哈希码,并且用equals()方法进行比较时,返回True的两个对象。
允许包含null元素。
Set<String> set = new HashSet<String>();
方法摘要
1. boolean add(E e) 如果此 set 中尚未包含指定元素,则添加指定元素。
set.add("zhangsan");
void clear() 从此 set 中移除所有元素。
set.clear();
boolean contains(Object o) 如果此 set 包含指定元素,则返回 true。
set.contains("lisi");
boolean isEmpty() 如果此 set 不包含任何元素,则返回 true。
set.isEmpty();
Iterator iterator() 返回对此 set 中元素进行迭代的迭代器。
Iterator<String> it = set.iterator();
String s = null;
while ( it.hasNext()) {
s = it.next();
System.out.println(s);
}
boolean remove(Object o) 如果指定元素存在于此 set 中,则将其移除。
set.remove("lisi");
TreeSet类不仅实现类Set接口,还实现了SortedSet接口,从而保证了集合中的对象按照一定顺序排序。(字典顺序)
Set<String> set = new TreeSet<String>();
boolean add(E e) 将指定的元素添加到此 set(如果该元素尚未存在于 set 中)。
set.add("zhangsan");
E ceiling(E e) 返回此 set 中大于等于给定元素的最小元素;如果不存在这样的元素,则返回 null。
set.ceiling("lisi");
comparator() 返回对此 set 中的元素进行排序的比较器;如果此 set 使用其元素的自然顺序,则返回 null。
set.comparator();
boolean contains(Object o) 如果此 set 包含指定的元素,则返回 true。
set.contains("lisi");
E floor(E e) 返回此 set 中小于等于给定元素的最大元素;如果不存在这样的元素,则返回 null。
set.floor("lisi");
Iterator iterator() 返回在此 set 中的元素上按升序进行迭代的迭代器。
Iterator<String> it = set.iterator();
boolean remove(Object o) 将指定的元素从 set 中移除(如果该元素存在于此 set 中)。
set.remove("lisi");
SortedSet subSet(E fromElement, E toElement) 返回此 set 的部分视图,其元素从 fromElement(包括)到 toElement(不包括)。
set.subSet("lisi", "lier");
Map接口 是java集合框架中不同于Collection接口的另一个重要接口,它对应的是一种从到值的对应关系集合。
HashMap类是基于哈希算法的Map接口实现。HashMap将它的建保存在哈希表中进行维护,键是唯一的。但是,HashMap并不保证键以特定序列排序,特别是不保证顺序永久不变。
Map<String, String> map = new TreeMap<String, String>();
V put(K key, V value) 在此映射中关联指定值与指定键。
map.put("cd", "成都");
map.put("bj", "北京");
map.put("sh", "上海");
V get(Object key)返回指定键所映射的值;如果对于该键来说,此映射不包含任何映射关系,则返回 null。
System.out.println(map.get("cd"));
boolean containsKey(Object key) 如果此映射包含对于指定键的映射关系,则返回 true。 boolean containsValue(Object value) 如果此映射将一个或多个键映射到指定值,则返回 true。
map.containsKey("cd");
map.containsValue("成都");
Set keySet() 返回此映射中所包含的键的 Set 视图。
System.out.println(map.map.keySet());
V remove(Object key)从此映射中移除指定键的映射关系(如果存在)。
map.remove("cd");
TreeMap类中键存放方式与TreeSet相似,它将键存放在树中,键的顺序按照自然顺序或者自定义顺序两种方式排列。
TreeMap<String, String> map = new TreeMap<String, String>();
K ceilingKey(K key) 返回大于等于给定键的最小键;如果不存在这样的键,则返回 null。
map.ceilingKey("cd");
boolean containsKey(Object key) 如果此映射包含指定键的映射关系,则返回 true。
map.containsKey("cd");
boolean containsValue(Object value) 如果此映射为指定值映射一个或多个键,则返回 true。
map.containsValue("成都");
K floorKey(K key) 返回小于等于给定键的最大键;如果不存在这样的键,则返回 null。
map.floorKey("cd");
V get(Object key) 返回指定键所映射的值,如果对于该键而言,此映射不包含任何映射关系,则返回 null
map.get("cd");
Set keySet() 返回此映射包含的键的 Set 视图。
map.keySet();
V put(K key, V value) 将指定值与此映射中的指定键进行关联。
map.put("cd", "成都");
map.put("bj", "北京");
map.put("sh", "上海");
V remove(Object key) 如果此 TreeMap 中存在该键的映射关系,则将其删除。
map.remove("cd");
SortedMap<K,V> subMap(K fromKey, K toKey) 返回此映射的部分视图,其键值的范围从 fromKey(包括)到 toKey(不包括)。
map.subMap("cd", "sh");
标签:ash 元素 hash java集合框架 code dma print rem nsvalue
原文地址:http://www.cnblogs.com/zh0322/p/6100062.html