目录
String
基础属性与检查
| 方法名 | 功能描述 | 示例 |
| length() | 返回字符串长度(字符数量) | "hello".length() → 5 |
| isEmpty() | 判断字符串是否为空(长度为 0) | "".isEmpty() → true |
| charAt(int index) | 返回指定索引处的字符(索引从 0 开始) | "Java".charAt(2) → 'v' |
比较与匹配
| 方法名 | 功能描述 | 示例 |
| equals(Object obj) | 比较字符串内容是否相等(区分大小写) | "java".equals("Java") → false |
| equalsIgnoreCase(String str) | 忽略大小写比较内容 | "java".equalsIgnoreCase("Java") → true |
| compareTo(String str) | 按字典序比较大小(返回差值:负数 / 0 / 正数) | "a".compareTo("b") → -1 |
| startsWith(String prefix) | 判断是否以指定前缀开头 | "hello".startsWith("he") → true |
| endsWith(String suffix) | 判断是否以指定后缀结尾 | "world".endsWith("ld") → true |
| contains(CharSequence s) | 判断是否包含子序列 | "coding".contains("in") → true |
截取与拆分
| 方法名 | 功能描述 | 示例 |
| substring(int beginIndex) | 从起始索引截取到末尾 | "hello".substring(1) → "ello" |
| substring(int beginIndex, int endIndex) | 截取 [beginIndex, endIndex) 区间的子串 | "hello".substring(1, 4) → "ell" |
修改与替换
| 方法名 | 功能描述 | 示例 |
| replace(char oldChar, char newChar) | 替换所有匹配字符 | "banana".replace('a', 'o') → "bonono" |
| replace(CharSequence target, CharSequence replacement) | 替换所有匹配子串 | "Java".replace("va", "VA") → "JaVA" |
转换与格式化
| 方法名 | 功能描述 | 示例 |
| toLowerCase() | 转换为小写 | "Java".toLowerCase() → "java" |
| toUpperCase() | 转换为大写 | "Java".toUpperCase() → "JAVA" |
| toCharArray() | 转换为字符数组 | "hi".toCharArray() → {'h', 'i'} |
数组
排序(Arrays类)
| 方法 | 功能 | 示例 |
| sort(数组) | 对数组自然升序排序(基本类型 / 对象数组) | Arrays.sort(new int[]{3,1,2}); → [1,2,3] |
填充(Arrays 类)
| 方法 | 功能 | 示例 |
| fill(数组, 填充值) | 将数组所有元素设为指定值 | Arrays.fill(new int[3], 5); → [5,5,5] |
| fill(数组, 起始, 结束, 填充值) | 将数组 [起始, 结束) 区间 元素设为指定值 | Arrays.fill(arr, 1, 3, 0); → 索引 1-2 设为 0 |
转字符串
| 方法 | 功能 | 示例 |
| toString(数组) | 将数组转为字符串(格式:[元素1, 元素2]) | Arrays.toString(new int[]{1,2}); → "[1, 2]" |
比较(Arrays 类)
| 方法 | 功能 | 示例 |
| equals(数组1, 数组2) | 比较数组长度和对应元素是否全相等(对象数组调用 equals 比较元素) | Arrays.equals(new int[]{1,2}, new int[]{1,2}); → true |
哈希表
HashSet
增加
| 方法 | 功能描述 | 示例(以 HashSet 为例) |
| add(E e) | 向 Set 中添加元素(若元素已存在,返回 false;不存在返回 true) | set.add("apple"); → 新增返回 true,重复返回 false |
删除
| 方法 | 功能描述 | 示例(以 HashSet 为例) |
| remove(Object o) | 从 Set 中删除指定元素(存在则删除并返回 true,不存在返回 false) | set.remove("apple"); → 存在返回 true |
包含
| 方法 | 功能描述 | 示例(以 HashSet 为例) |
| contains(Object o) | 判断 Set 中是否包含指定元素(存在返回 true,否则 false) | set.contains("apple"); → 存在返回 true |
遍历
| 方法 | 功能描述 | 示例 |
| 迭代器 / 增强 for 循环 | 遍历 Set 元素(Set 无索引,不能用普通 for 循环) | for (String s : set) { ... } 或 Iterator<String> it = set.iterator(); while (it.hasNext()) { ... } |
其他常用方法
| 方法 | 功能描述 | 示例(以 HashSet 为例) |
| size() | 返回 Set 中元素的个数 | set.size(); → 如含 3 个元素则返回 3 |
| isEmpty() | 判断 Set 是否为空(元素个数为 0 返回 true) | set.isEmpty(); → 空返回 true,非空 false |
| clear() | 清空 Set 中所有元素 | set.clear(); → Set 变为空集合 |
| 方法 | 功能描述 | 示例 |
| toArray() | 将 Set 转为Object 数组 | Object[] arr = set.toArray(); |
| toArray(T[] a) | 将 Set 转为指定类型的数组(推荐,避免类型转换) | String[] arr = set.toArray(new String[0]); |
HashMap
增加
| 方法 | 功能描述 | 示例(HashMap<String, Integer> map) |
| put(K key, V value) | 添键值对(key 已存在则覆盖旧 value,返回旧 value;新 key 返回 null) | map.put("apple", 5); → 新添返回 null,重写返回旧值 |
获取
| 方法 | 功能描述 | 示例 |
| get(Object key) | 根据 key 获取 value:key 不存在时返回 null | Integer count = map.get("apple"); → 存在返回 10,不存在返回 null |
| getOrDefault(Object key, V defaultValue) | 根据 key 获取 value:key 不存在时返回默认值(避免 null 判断) | Integer count = map.getOrDefault("cherry", 0); → “cherry” 不存在,返回 0 |
| 方法 | 功能描述 | 示例 |
| values() | 获取所有 value 的集合(Collection<V> 类型,可遍历) | Collection<Integer> allValues = map.values(); → 包含 10、3 等所有 value |
| keySet() | 获取所有 key 的集合(Set<K> 类型,key 唯一,可遍历) | Set<String> allKeys = map.keySet(); → 包含 “apple”“banana” 等所有 key |
| entrySet() | 获取所有键值对的集合(Set<Map.Entry<K,V>> 类型,遍历键值对效率最高) | Set<Map.Entry<String, Integer>> entries = map.entrySet(); for (Map.Entry<String, Integer> entry : entries) { String key = entry.getKey(); Integer value = entry.getValue(); } |
删除
| 方法 | 功能描述 | 示例(HashMap<String, Integer> map) |
| remove(Object key) | 根据 key 删键值对,返回被删 value(key 不存在返回 null) | map.remove("apple"); → 返回 5,无 key 返回 null |
包含
| 方法 | 功能描述 | 示例(HashMap<String, Integer> map) |
| containsKey(Object key) | 判断是否含指定 key(O (1) 效率,推荐) | map.containsKey("apple"); → true/false |
| containsValue(Object value) | 判断是否含指定 value(需遍历,O (n) 效率,慎用) | map.containsValue(5); → true/false |
其他常用方法
| 方法 | 功能描述 | 示例(HashMap<String, Integer> map) |
| size() | 返回键值对数量 | map.size(); → 如存 3 组返回 3 |
| isEmpty() | 判断是否为空(size==0 返回 true) | map.isEmpty(); → 空返回 true,非空 false |
| clear() | 清空所有键值对 | map.clear(); → 清空后 size=0 |
字符串拼接
StringBuffer
追加(最常用)
| 方法 | 说明 | 示例 |
| append(boolean b) | 追加布尔值 | sb.append(true); // "Hello true" |
| append(char c) | 追加字符 | sb.append('!'); // "Hello!" |
| append(int i) | 追加整数 | sb.append(2023); // "Hello2023" |
| append(Object obj) | 追加对象(自动调用toString()) | sb.append(new Date()); // 追加当前时间 |
插入内容
| 方法 | 说明 | 示例 |
| insert(int offset, String str) | 在指定位置插入字符串 | sb.insert(5, "Java "); // "HelloJava World" |
| insert(int offset, char c) | 插入字符 | sb.insert(0, '!'); // "!Hello" |
删除
| 方法 | 说明 | 示例 |
| delete(int start, int end) | 删除指定区间字符(左闭右开) | sb.delete(5, 10); // "HelloWorld" |
| deleteCharAt(int index) | 删除指定位置字符 | sb.deleteCharAt(5); // "Helo World" |
修改
| 方法 | 说明 | 示例 |
| replace(int start, int end, String str) | 替换指定区间内容 | sb.replace(6, 11, "Java"); // "HelloJava" |
| setCharAt(int index, char c) | 修改指定位置字符 | sb.setCharAt(5, 'J'); // "HelloJWorld" |
反转
| 方法 | 说明 | 示例 |
| reverse() | 反转整个字符串 | sb.reverse(); // "dlroW olleH" |
其他常用方法
| 方法 | 说明 | 示例 |
| length() | 返回字符长度 | sb.length(); // 返回11 |
| toString() | 转换为 String 类型 | String s = sb.toString(); |
StringBuilder
与StringBuffer高度一致
ArrayList
添加
| 方法 | 功能描述 | 示例 |
| add(E e) | 在列表末尾添加元素 | list.add("apple"); → 列表变为 ["apple"] |
| add(int index, E e) | 在指定索引插入元素(后续元素后移) | list.add(1, "banana"); → 列表变为 ["apple","banana"] |
获取
| 方法 | 功能描述 | 示例 |
| get(int index) | 获取指定索引的元素 | String elem = list.get(0); → 得到 "apple" |
修改
| 方法 | 功能描述 | 示例 |
| set(int index, E e) | 修改指定索引的元素,返回旧元素 | String old = list.set(0, "apricot"); → 列表变为 ["apricot","banana"],old 为 "apple" |
删除
| 方法 | 功能描述 | 示例 |
| remove(int index) | 删除指定索引的元素,返回被删元素 | String removed = list.remove(1); → 删除索引 1 的元素,返回 "banana" |
查找
| 方法 | 功能描述 | 示例 |
| contains(Object o) | 判断列表是否包含指定对象 | boolean hasApple = list.contains("apple"); → 包含返回 true |
| indexOf(Object o) | 查找指定对象第一次出现的索引,不存在返回 -1 | int idx = list.indexOf("banana"); → 若在索引 1 则返回 1 |
| lastIndexOf(Object o) | 查找指定对象最后一次出现的索引,不存在返回 -1 | int lastIdx = list.lastIndexOf("apple"); |
其他常用方法
| 方法 | 功能描述 | 示例 |
| isEmpty() | 判断列表是否为空(size() 为 0) | boolean isEmpty = list.isEmpty(); → 空列表返回 true |
| 方法 | 功能描述 | 示例 |
| clear() | 清空列表中所有元素 | list.clear(); → 列表变为空,size() 为 0 |
| 方法 | 功能描述 | 示例 |
| size() | 获取列表中元素的个数 | int len = list.size(); → 若列表有 2 个元素,返回 2 |
LinkedList
添加
添加的add方式
| 方法 | 功能描述 | 示例 |
| add(E e) | 在列表末尾添加元素(同 ArrayList) | list.add("apple"); → 列表变为 ["apple"] |
| add(int index, E e) | 在指定索引插入元素(后续元素后移) | list.add(1, "banana"); → 列表变为 ["apple","banana"] |
| addFirst(E e) | 在列表头部添加元素(LinkedList 特有) | list.addFirst("grape"); → 列表变为 ["grape","apple","banana"] |
| addLast(E e) | 在列表末尾添加元素(等同于 add(E e)) | list.addLast("date"); → 列表变为 ["grape","apple","banana","date"] |
添加的offer方式
| 方法 | 功能描述 | 示例 |
| offer(E e) | 在末尾添加元素(用于队列模式,返回 boolean) | boolean success = list.offer("mango"); → 添加成功返回 true |
| offerFirst(E e) | 在头部添加元素(队列模式特有) | list.offerFirst("pear"); → 头部插入 "pear" |
| offerLast(E e) | 在末尾添加元素(等同于 offer(E e)) | list.offerLast("orange"); → 末尾插入 "orange" |
获取
获取的get方式
| 方法 | 功能描述 | 示例 |
| get(int index) | 获取指定索引的元素(效率低于 ArrayList) | String elem = list.get(2); → 得到索引 2 的元素 |
| getFirst() | 获取列表头部元素(LinkedList 特有,空列表抛异常) | String first = list.getFirst(); → 得到头部元素 |
| getLast() | 获取列表末尾元素(特有,空列表抛异常) | String last = list.getLast(); → 得到末尾元素 |
获取的peek方式
| 方法 | 功能描述 | 示例 |
| peek() | 获取头部元素(队列模式,空列表返回 null,不抛异常) | String peekElem = list.peek(); → 等同于 getFirst() 但返回 null |
| peekFirst() | 获取头部元素(空列表返回 null) | String peekFirst = list.peekFirst(); → 同 peek() |
| peekLast() | 获取末尾元素(空列表返回 null) | String peekLast = list.peekLast(); → 同 getLast() 但返回 null |
删除
删除的remove方式
| 方法 | 功能描述 | 示例 |
| remove(int index) | 删除指定索引的元素,返回被删元素 | String removed = list.remove(1); → 删除索引 1 的元素 |
| removeFirst() | 删除并返回头部元素(特有,空列表抛异常) | String firstRemoved = list.removeFirst(); → 删除头部元素 |
| removeLast() | 删除并返回末尾元素(特有,空列表抛异常) | String lastRemoved = list.removeLast(); → 删除末尾元素 |
删除的poll方式
| 方法 | 功能描述 | 示例 |
| poll() | 删除并返回头部元素(队列模式,空列表返回 null) | String pollElem = list.poll(); → 等同于 removeFirst() 但返回 null |
| pollFirst() | 删除并返回头部元素(空列表返回 null) | String pollFirst = list.pollFirst(); → 同 poll() |
| pollLast() | 删除并返回末尾元素(空列表返回 null) | String pollLast = list.pollLast(); → 同 removeLast() 但返回 null |
包含/查找
| 方法 | 功能描述 | 示例 |
| contains(Object o) | 判断是否包含指定对象 | boolean hasBanana = list.contains("banana"); → 包含返回 true |
| indexOf(Object o) | 查找对象第一次出现的索引,不存在返回 -1 | int idx = list.indexOf("cherry"); → 存在返回对应索引 |
| lastIndexOf(Object o) | 查找对象最后一次出现的索引,不存在返回 -1 | int lastIdx = list.lastIndexOf("apple"); |
其他常用方法
| 方法 | 功能描述 | 示例 |
| isEmpty() | 判断列表是否为空 | boolean isEmpty = list.isEmpty(); → 空列表返回 true |
| size() | 获取元素个数 | int len = list.size(); → 返回当前元素总数 |
| 方法 | 功能描述 | 示例 |
| clear() | 清空所有元素 | list.clear(); → 列表变为空,size() 为 0 |
Stack
压栈
| 方法 | 功能描述 | 示例 |
| push(E item) | 将元素压入栈顶,返回该元素 | stack.push(10); stack.push(20); → 栈内元素:[10, 20](栈顶为 20) |
弹栈
| 方法 | 功能描述 | 示例 |
| pop() | 移除并返回栈顶元素,若栈为空则抛 EmptyStackException | Integer top = stack.pop(); → 返回 20,栈内剩余 [10] |
取栈顶
| 方法 | 功能描述 | 示例 |
| peek() | 获取栈顶元素(不移除),若栈为空则抛 EmptyStackException | Integer top = stack.peek(); → 返回 10,栈内仍为 [10] |
取长度
| 方法 | 功能描述 | 示例 |
| size() | 获取栈中元素的总个数 | int size = stack.size(); → 若栈内有 2 个元素,返回 2 |
查找
| 方法 | 功能描述 | 示例 |
| search(Object o) | 查找指定元素在栈中的位置(栈顶为 1,向下依次递增),未找到返回 -1 | stack.push(10); stack.push(20); stack.search(10); → 返回 2(栈顶 20 是 1,10 是 2) |
| 方法 | 功能描述 | 示例 |
| contains(Object o) | 判断栈是否包含指定元素 | boolean has10 = stack.contains(10); → 包含则返回 true |
判空
| 方法 | 功能描述 | 示例 |
| empty() | 判断栈是否为空,空则返回 true | boolean isEmpty = stack.empty(); → 若栈内无元素,返回 true |
清空
| 方法 | 功能描述 | 示例 |
| clear() | 清空栈中所有元素 | stack.clear(); → 栈变为空,size() 为 0 |
Queue
入队
| 方法 | 功能描述 | 异常 / 返回值 | 示例 |
| add(E e) | 将元素添加到队尾 | 队列满时抛 IllegalStateException | queue.add("apple"); → 队尾添加 “apple” |
| offer(E e) | 将元素添加到队尾 | 队列满时返回 false(更安全,推荐使用) | boolean success = queue.offer("banana"); → 成功返回 true |
出队
| 方法 | 功能描述 | 异常 / 返回值 | 示例 |
| remove() | 移除并返回队首元素 | 队列为空时抛 NoSuchElementException | String first = queue.remove(); → 返回并移除队首元素 |
| poll() | 移除并返回队首元素 | 队列为空时返回 null(更安全,推荐使用) | String first = queue.poll(); → 队空时返回 null |
取队头
| 方法 | 功能描述 | 异常 / 返回值 | 示例 |
| peek() | 获取队首元素(不移除) | 队列为空时返回 null(更安全,推荐使用) | String top = queue.peek(); → 队空时返回 null |
查找
| 方法 | 功能描述 | 示例 |
| contains(Object o) | 判断队列是否包含指定元素 | boolean hasApple = queue.contains("apple"); → 包含返回 true |
其他常用方法
| 方法 | 功能描述 | 示例 |
| isEmpty() | 判断队列是否为空 | boolean isEmpty = queue.isEmpty(); → 空队列返回 true |
| size() | 获取队列中元素的总个数 | int len = queue.size(); → 队列有 3 个元素时返回 3 |
| clear() | 清空队列中所有元素 | queue.clear(); → 队列变为空,size() 为 0 |
双端队列Deque特有的常用方法
添加
| 方法 | 功能描述(操作队首 / 队尾) | 示例 |
| addFirst(E e) | 在队首添加元素(抛异常) | deque.addFirst("first"); → 队首插入 “first” |
| offerFirst(E e) | 在队首添加元素(返回 boolean) | deque.offerFirst("first"); → 成功返回 true |
| addLast(E e) | 在队尾添加元素(等同于 add(E e)) | deque.addLast("last"); → 队尾插入 “last” |
| offerLast(E e) | 在队尾添加元素(等同于 offer(E e)) | deque.offerLast("last"); → 成功返回 true |
删除
| 方法 | 功能描述(操作队首 / 队尾) | 示例 |
| removeFirst() | 移除并返回队首(等同于 remove()) | deque.removeFirst(); → 返回队首元素 |
| pollFirst() | 移除并返回队首(等同于 poll()) | deque.pollFirst(); → 队空返回 null |
| removeLast() | 移除并返回队尾 | deque.removeLast(); → 返回队尾元素 |
| pollLast() | 移除并返回队尾 | deque.pollLast(); → 队空返回 null |
获取
| 方法 | 功能描述(操作队首 / 队尾) | 示例 |
| getFirst() | 获取队首(不移除,抛异常) | deque.getFirst(); → 返回队首元素 |
| peekFirst() | 获取队首(不移除,等同于 peek()) | deque.peekFirst(); → 队空返回 null |
| getLast() | 获取队尾(不移除,抛异常) | deque.getLast(); → 返回队尾元素 |
| peekLast() | 获取队尾(不移除) | deque.peekLast(); → 队空返回 null |
PriorityQueue
入堆
| 方法 | 功能描述 | 异常 / 返回值 | 示例 |
| add(E e) | 将元素添加到堆中,自动调整堆结构 | 元素为 null 抛 NullPointerException | minHeap.add(5); → 堆中添加 5,小顶堆仍保持堆顶最小 |
| offer(E e) | 同 add(E e),功能完全一致 | 元素为 null 抛 NullPointerException,成功返回 true | boolean success = minHeap.offer(4); → 成功添加返回 true |
出堆
| 方法 | 功能描述 | 异常 / 返回值 | 示例 |
| poll() | 移除并返回堆顶元素(优先级最高),自动调整堆结构 | 堆为空时返回 null(推荐使用) | Integer top = minHeap.poll(); → 小顶堆返回最小元素,堆结构重新调整 |
| remove() | 移除并返回堆顶元素 | 堆为空时抛 NoSuchElementException | Integer top = minHeap.remove(); → 功能同 poll(),但堆空抛异常 |
取堆顶
| 方法 | 功能描述 | 异常 / 返回值 | 示例 |
| peek() | 获取堆顶元素(不移除),不调整堆结构 | 堆为空时返回 null | Integer top = minHeap.peek(); → 小顶堆返回最小元素,堆结构不变 |
查找
| 方法 | 功能描述 | 示例 |
| contains(Object o) | 判断堆是否包含指定元素 | boolean has5 = minHeap.contains(5); → 包含则返回 true |
其他常用方法
| 方法 | 功能描述 | 示例 |
| isEmpty() | 判断堆是否为空 | boolean isEmpty = minHeap.isEmpty(); → 空堆返回 true |
| size() | 获取堆中元素的总个数 | int heapSize = minHeap.size(); → 堆中有 3 个元素时返回 3 |
| clear() | 清空堆中所有元素 | minHeap.clear(); → 堆变为空,size() 为 0 |
1611

被折叠的 条评论
为什么被折叠?



