Stack
常用方法
E push(E item) 把项压入堆栈顶部。
E pop() 移除堆栈顶部的对象,并作为此函数的值返回该对象。
E peek() 查看堆栈顶部的对象,但不从堆栈中移除它。
boolean empty() 测试堆栈是否为空。
int search(Object o) 返回对象在堆栈中的位置,以 1 为基数。
队列Queue(来自于Linkedlist)
Deque接口继承了Queue接口,而Queue接口继承了Collection接口,
LinkedList实现了Deque接口;
(顶级接口)Collection-->Queue-->Deque-->LinkedList(实现类)
add 增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常
offer 【推荐】 添加一个元素并返回true 如果队列已满,则返回false
remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
poll 【推荐】 移除并返问队列头部的元素 如果队列为空,则返回null
element 返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
peek 返回队列头部的元素 如果队列为空,则返回null
put 添加一个元素 如果队列满,则阻塞
take 移除并返回队列头部的元素 如果队列为空,则阻塞
在java5中新增加了java.util.Queue接口,用以支持队列的常见操作。该接口扩展了java.util.Collection接口。
Queue使用时要尽量避免Collection的add()和remove()方法,而是要使用offer()来加入元素,使用poll()来获取并移出元素。它们的优点是通过返回值可以判断成功与否,add()和remove()方法在失败的时候会抛出异常。 如果要使用前端而不移出该元素,使用element()或者peek()方法。
LinkedList
boolean add(E object)
void add(int location, E object)
boolean addAll(Collection collection) boolean addAll(int location, Collection collection) void addFirst(E object) void addLast(E object) void clear() Object clone() boolean contains(Object object) Iterator descendingIterator() E element() E get(int location) E getFirst() E getLast() int indexOf(Object object) int lastIndexOf(Object object) ListIterator listIterator(int location) boolean offer(E o) boolean offerFirst(E e) bo olean offerLast(E e) E peek() E peekFirst() E peekLast() E poll() E pollFirst() E pollLast() E pop() void push(E e) E remove() E remove(int location) boolean remove(Object object) E removeFirst() boolean removeFirstOccurrence(Object o) E removeLast() boolean removeLastOccurrence(Object o) E set(int location, E object) int size() T[] toArray(T[] contents) Object[] toArray()
ArrayList动态数组
ArrayList 中常用的方法
add(E e): 在数组末尾添加元素
size(): 数组中实际元素个数,并不是数组容量
add(int index, E e): 在数组指定位置添加元素
clear(): 将数组中元素清空
contains(E e): 判断数组中是否含有某个元素
get(int index): 返回数组指定位置的元素
indexOf(E e): 返回数组指定元素第一次出现的位置
set(int index, E e): 替换数组指定位置的值
remove(int index): 移除数组指定位置的元素
remove(E e): 移除数组中第一次出现的指定元素
addAll(Collection c): 在数组末尾添加另一个数组
addAll(int index, collection c): 在数组指定位置添加另一个数组
removeAll(Collectionc): 将数组中属于数组 c 中的元素全部删除
Dict
1Enumeration elements( )
返回此 dictionary 中值的枚举。
2Object get(Object key)
返回此 dictionary 中该键所映射到的值。
3boolean isEmpty( )
测试此 dictionary 是否不存在从键到值的映射。
4Enumeration keys( )
返回此 dictionary 中的键的枚举。
5Object put(Object key, Object value)
将指定 key 映射到此 dictionary 中指定 value。
6Object remove(Object key)
从此 dictionary 中移除 key (及其相应的 value)。
7int size( )
返回此 dictionary 中条目(不同键)的数量。
char
char转换为int
char ch = (char)(n + '0');//因为是ascii运算
不过需要注意(因为char只有一个字节),此处的n只能是0-9之间的字符
int转换为char
int n = int(ch) - int('0');
此处ch也是‘0’至‘9’的数字字符
String
String 方法
下面是 String 类支持的方法,更多详细,参看 Java String API 文档:
SN(序号)方法描述
1char charAt(int index)------------------------
返回指定索引处的 char 值。
把这个字符串和另一个对象比较。
3int compareTo(String anotherString)--------------------
按字典顺序比较两个字符串。
4int compareToIgnoreCase(String str)
按字典顺序比较两个字符串,不考虑大小写。
5String concat(String str)------------------------
将指定字符串连接到此字符串的结尾。
6boolean contentEquals(StringBuffer sb)
当且仅当字符串与指定的StringBuffer有相同顺序的字符时候返回真。
7static String copyValueOf(char[] data)
返回指定数组中表示该字符序列的 String。
8static String copyValueOf(char[] data, int offset, int count)
返回指定数组中表示该字符序列的 String。
9boolean endsWith(String suffix)
测试此字符串是否以指定的后缀结束。
10boolean equals(Object anObject)-------------------
将此字符串与指定的对象比较。
11boolean equalsIgnoreCase(String anotherString)
将此 String 与另一个 String 比较,不考虑大小写。
使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
13byte[] getBytes(String charsetName)
使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
14void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
将字符从此字符串复制到目标字符数组。
返回此字符串的哈希码。
16int indexOf(int ch)------------------------------------
返回指定字符在此字符串中第一次出现处的索引。
17int indexOf(int ch, int fromIndex)
返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。
18int indexOf(String str)------------------
返回指定子字符串在此字符串中第一次出现处的索引。
19int indexOf(String str, int fromIndex)
返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。
返回字符串对象的规范化表示形式。
返回指定字符在此字符串中最后一次出现处的索引。
22int lastIndexOf(int ch, int fromIndex)
返回指定字符在此字符串中最后一次出现处的索引,从指定的索引处开始进行反向搜索。
返回指定子字符串在此字符串中最右边出现处的索引。
24int lastIndexOf(String str, int fromIndex)
返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索。
25int length()-------------------
返回此字符串的长度。
26boolean matches(String regex)------------------
告知此字符串是否匹配给定的正则表达式。
27boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
测试两个字符串区域是否相等。
28boolean regionMatches(int toffset, String other, int ooffset, int len)
测试两个字符串区域是否相等。
29String replace(char oldChar, char newChar)---------------------
返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的。
30String replaceAll(String regex, String replacement)-----------------------------
使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
31String replaceFirst(String regex, String replacement)
使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。
32String[] split(String regex)-----------------------------------------
根据给定正则表达式的匹配拆分此字符串。
33String[] split(String regex, int limit)----------------------------------------
根据匹配给定的正则表达式来拆分此字符串。
34boolean startsWith(String prefix)
测试此字符串是否以指定的前缀开始。
35boolean startsWith(String prefix, int toffset)
测试此字符串从指定索引开始的子字符串是否以指定前缀开始。
36CharSequence subSequence(int beginIndex, int endIndex)
返回一个新的字符序列,它是此序列的一个子序列。
37String substring(int beginIndex)-------------------
返回一个新的字符串,它是此字符串的一个子字符串。
38String substring(int beginIndex, int endIndex)---------------------
返回一个新字符串,它是此字符串的一个子字符串。【不包括结束索引】
39char[] toCharArray()------------------------
将此字符串转换为一个新的字符数组。
使用默认语言环境的规则将此 String 中的所有字符都转换为小写。
41String toLowerCase(Locale locale)
使用给定 Locale 的规则将此 String 中的所有字符都转换为小写。
返回此对象本身(它已经是一个字符串!)。
使用默认语言环境的规则将此 String 中的所有字符都转换为大写。
44String toUpperCase(Locale locale)
使用给定 Locale 的规则将此 String 中的所有字符都转换为大写。
45 String trim()---------------
返回字符串的副本,忽略前导空白和尾部空白。
46static String valueOf(primitive data type x)----------------------------------------------
返回给定data type类型x参数的字符串表示形式。
Map
Map m1 = new HashMap();
m1.put("Zara", "8"); m1.put("Mahnaz", "31"); m1.put("Ayan", "12"); m1.put("Daisy", "14");
1void clear( )从此映射中移除所有映射关系(可选操作)。
2boolean containsKey(Object k)如果此映射包含指定键的映射关系,则返回 true。
3boolean containsValue(Object v)如果此映射将一个或多个键映射到指定值,则返回 true。
4Set entrySet( )返回此映射中包含的映射关系的 Set 视图。
5boolean equals(Object obj)比较指定的对象与此映射是否相等。
6Object get(Object k)返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。
7int hashCode( )返回此映射的哈希码值。
8boolean isEmpty( )如果此映射未包含键-值映射关系,则返回 true。
9Set keySet( )返回此映射中包含的键的 Set 视图。
10Object put(Object k, Object v)将指定的值与此映射中的指定键关联(可选操作)。
11void putAll(Map m)从指定映射中将所有映射关系复制到此映射中(可选操作)。
12Object remove(Object k)如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。
13int size( )返回此映射中的键-值映射关系数。
14Collection values( )返回此映射中包含的值的 Collection 视图。
HashMap
HashSet
???????????????????????????????????
HashSet是基于HashMap来实现的,操作很简单,更像是对HashMap做了一次“封装”,而且只使用了HashMap的key来实现各种特性,我们先来感性的认识一下这个结构:
void clear()
boolean isEmpty()
int size()