标签:java
Java Collection Framework:Java集合框架
在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类)。所有抽象出来的数据结构和操作(算法)统称为Java集合框架。
Javav程序员在具体应用时,不必考虑数据结构和算法实现细节,只需要用这些类创造出来一些对象,然后直接应用就可以了。大大提高了编程效率。
对集合操作的工具类:
Java提供了java.Util.Collections和java.util.Arrays两个工具类简化了对集合的操作。
(注意:java.util.Collection是一个接口,是Java集合层次的根接口。java.util.Collections是一个对集合提供一些操作的工具类)
java.util.Collections提供了一些static方法用来操作或创建Collection,Map集合。
java.util.Arrays主要提供static方法来对数组进行操作。
线程安全的类:
Vector:比ArrayList多了线程同步机制。
Stack:堆栈类。
Hashtable:比HashMap多了线程安全。
Collection接口是所有集合接口的积累,提供了集合接口的通用操作。
public
interface
Collection<E>
extends
Iterable<E>
{
// Basic operations
int
size();
boolean
isEmpty();
boolean
contains(Object element);
boolean
add(E element);
//optional
boolean
remove(Object element);
//optional
Iterator<E>
iterator();
// Bulk operations
boolean
containsAll(Collection<?> c);
boolean
addAll(Collection<?
extends E> c);
//optional
boolean
removeAll(Collection<?> c);
//optional
boolean
retainAll(Collection<?> c);
//optional
void
clear();
//optional
// Array operations
Object[]
toArray();
<T>
T[] toArray(T[]
a);
}
public
interface
List<E>
extends
Collection<E>
{
// Positional access
E get(int
index);
E set(int
index, E element);
//optional
boolean
add(E element);
//optional
void
add(int index, E element);
//optional
E remove(int
index);
//optional
boolean
addAll(int index,
Collection<?
extends E> c);
//optional
// Search
int
indexOf(Object o);
int
lastIndexOf(Object o);
// Iteration
ListIterator<E>
listIterator();
ListIterator<E>
listIterator(int index);
// Range-view
List<E>
subList(int from,
int to);
}
Set是一个不包含重复元素的无序集合(Collection)。Set接口中的函数都是从Collection继承而来。但限制了add的使用,使其不能添加重复元素。
public
interface
Set<E>
extends
Collection<E>
{
// Basic operations
int
size();
boolean
isEmpty();
boolean
contains(Object element);
boolean
add(E element);
//optional
boolean
remove(Object element);
//optional
Iterator<E>
iterator();
// Bulk operations
boolean
containsAll(Collection<?> c);
boolean
addAll(Collection<?
extends E> c);
//optional
boolean
removeAll(Collection<?> c);
//optional
boolean
retainAll(Collection<?> c);
//optional
void
clear();
//optional
// Array Operations
Object[]
toArray();
<T>
T[] toArray(T[]
a);
}
Map是Java提供的一个接口。Map是一种包含键值对的元素的集合。Map不能包含重复的键,并可以通过键实现对值得快速访问。
public interface Map<K,V> {
// Basic operations
V put(K key, V value);
V get(Object key);
V remove(Object key);
boolean containsKey(Object key);
boolean containsValue(Object value);
int size();
boolean isEmpty();
// Bulk operations
void putAll(Map<? extends K, ? extends V> m);
void clear();
// Collection Views
public Set<K> keySet();
public Collection<V> values();
public Set<Map.Entry<K,V>> entrySet();
// Interface for entrySet elements
public interface Entry {
K getKey();
V getValue();
V setValue(V value);
}
}
public
interface
Map<K,V>
{
// Basic operations
V put(K
key, V value);
V get(Object
key);
V remove(Object
key);
boolean
containsKey(Object key);
boolean
containsValue(Object value);
int
size();
boolean
isEmpty();
// Bulk operations
void
putAll(Map<?
extends K,
?
extends V> m);
void
clear();
// Collection Views
public
Set<K> keySet();
public
Collection<V> values();
public
Set<Map.Entry<K,V>>
entrySet();
// Interface for entrySet
elements
public
interface
Entry
{
K getKey();
V getValue();
V setValue(V
value);
}
}
标签:java
原文地址:http://blog.csdn.net/zhuyunhe/article/details/46414015