Java Collections
1 什么是Java Collections
Java Collections类提供了对集合进行操作或返回集合的静态方法。它继承了Object类。
关于Java Collections类的核心要点是:
- Java Collection类支持对集合进行操作的多态算法。
- 如果提供给它们的集合或类对象为null,则Java Collection类将引发NullPointerException异常。
2 Java Collections的语法
public class Collections extends Object
3 Java Collections类的方法
修饰符 | 方法 | 描述 |
---|---|---|
static <T> boolean | addAll() | 用于将所有指定的元素添加到指定的集合中。 |
static <T> Queue<T> | asLifoQueue() | 返回一个双端队列的视图作为后进先出(LIFO)队列。 |
static <T> int | binarySearch() | 在列表中搜索指定的对象,并返回它们在已排序列表中的位置。 |
static <E> Collection<E> | checkedCollection() | 用于返回指定集合的动态类型安全视图。 |
static <E> List<E> | checkedList() | 用于返回指定列表的动态类型安全视图。 |
static <K,V> Map<K,V> | checkedMap() | 用于返回指定映射的动态类型安全视图。 |
static <K,V> NavigableMap<K,V> | checkedNavigableMap() | 用于返回指定可导航地图的动态类型安全视图。 |
static <E> NavigableSet<E> | checkedNavigableSet() | 用于返回指定导航集的动态类型安全视图。 |
static <E> Queue<E> | checkedQueue() | 用于返回指定队列的动态类型安全视图。 |
static <E> Set<E> | checkedSet() | 用于返回指定集合的动态类型安全视图。 |
static <K,V> SortedMap<K,V> | checkedSortedMap() | 用于返回指定排序映射的动态类型安全视图。 |
static <E> SortedSet<E> | checkedSortedSet() | 用于返回指定排序集的动态类型安全视图。 |
static <T> void | copy() | 用于将所有元素从一个列表复制到另一列表。 |
static boolean | disjoint() | 如果两个指定的集合没有相同的元素,则返回true。 |
static <T> Enumeration<T> | emptyEnumeration() | 用于获取没有元素的枚举。 |
static <T> Iterator<T> | emptyIterator() | 用于获取没有元素的Iterator。 |
static <T> List<T> | emptyList() | 用于获取没有元素的列表。 |
static <T> ListIterator<T> | emptyListIterator() | 用于获取没有元素的列表迭代器。 |
static <K,V> Map<K,V> | emptyMap() | 返回一个不变的空Map。 |
static <K,V> NavigableMap<K,V> | emptyNavigableMap() | 返回一个不变的空的NavigableMap。 |
static <E> NavigableSet<E> | emptyNavigableSet() | 用于获取本质上是不变的空NavigableSet。 |
static <T> Set<T> | emptySet() | 用于获取没有元素的集合。 |
static <K,V> SortedMap<K,V> | emptySortedMap() | 返回一个不可变的SortedMap。 |
static <E> SortedSet<E> | emptySortedSet() | 用于获取没有元素的SortedSet。 |
static <T> Enumeration<T> | enumeration() | 用于获取指定集合的枚举。 |
static <T> void | fill() | 用于用指定的元素替换指定列表中的所有元素。 |
static int | frequency() | 用于获取指定集合中等于指定对象的元素数。 |
static int | indexOfSubList() | 用于获取指定源列表中指定目标列表首次出现的起始位置。如果在指定列表中没有出现这种情况,则返回-1。 |
static int | lastIndexOfSubList() | 用于获取指定源列表中指定目标列表最后一次出现的起始位置。如果在指定列表中没有出现这种情况,则返回-1。 |
static <T> ArrayList<T> | list() | 用于获取一个数组列表,该列表包含按枚举返回顺序的指定枚举返回的元素。 |
static <T extends Object & Comparable<? super T>> T | max() | 根据其元素的自然顺序,它用于获取给定集合的最大值。 |
static <T extends Object & Comparable<? super T>> T | min() | 根据其元素的自然顺序,它用于获取给定集合的最小值。 |
static <T> List<T> | nCopies() | 用于获取由指定对象的n个副本组成的不可变列表。 |
static <E> Set<E> | newSetFromMap() | 用于返回由指定映射支持的集合。 |
static <T> boolean | replaceAll() | 用于将列表中一个指定值的所有出现替换为另一指定值。 |
static void | reverse() | 用于反转指定列表中元素的顺序。 |
static <T> Comparator<T> | reverseOrder() | 用于获取比较器,该比较器对实现Comparable接口的对象集合施加自然顺序的逆序。 |
static void | rotate() | 用于将指定列表中的元素旋转给定距离。 |
static void | shuffle() | 用于使用默认随机性对指定的列表元素进行随机重新排序。 |
static <T> Set<T> | singleton() | 用于获取仅包含指定对象的不可变集。 |
static <T> List<T> | singletonList() | 用于获取仅包含指定对象的不可变列表。 |
static <K,V> Map<K,V> | singletonMap() | 用于获取不可变的映射,仅将指定的键映射到指定的值。 |
static <T extends Comparable<? super T>>void | sort() | 用于按升序对指定集合列表中的元素进行排序。 |
static void | swap() | 用于交换指定列表中指定位置的元素。 |
static <T> Collection<T> | synchronizedCollection() | 用于获取指定集合支持的同步(线程安全)集合。 |
static <T> List<T> | synchronizedList() | 用于获取由指定列表支持的同步(线程安全)集合。 |
static <K,V> Map<K,V> | synchronizedMap() | 用于获取由指定映射支持的同步(线程安全)映射。 |
static <K,V> NavigableMap<K,V> | synchronizedNavigableMap() | 用于获取由指定的可导航图支持的同步(线程安全)NavigableMap。 |
static <T> NavigableSet<T> | synchronizedNavigableSet() | 用于获取由指定的导航集支持的同步(线程安全)NavigableSet。 |
static <T> Set<T> | synchronizedSet() | 用于获取由指定集支持的同步(线程安全)集。 |
static <K,V> SortedMap<K,V> | synchronizedSortedMap() | 用于获取由指定的排序映射表支持的同步(线程安全)SortedMap。 |
static <T> SortedSet<T> | synchronizedSortedSet() | 用于获取由指定排序集支持的同步(线程安全)SortedSet。 |
static <T> Collection<T> | unmodifiableCollection() | 用于获取指定集合的不可修改视图。 |
static <T> List<T> | unmodifiableList() | 用于获取指定列表的不可修改视图。 |
static <K,V> Map<K,V> | unmodifiableMap() | 用于获取指定地图的不可修改视图。 |
static <K,V> NavigableMap<K,V> | unmodifiableNavigableMap() | 用于获取指定的NavigableMap的不可修改视图。 |
static <T> NavigableSet<T> | unmodifiableNavigableSet() | 用于获取指定NavigableSet的不可修改视图。 |
static <T> Set<T> | unmodifiableSet() | 用于获取指定集的不可修改视图。 |
static <K,V> SortedMap<K,V> | unmodifiableSortedMap() | 用于获取指定排序映射的不可修改视图。 |
static <T> SortedSet<T> | unmodifiableSortedSet() | 用于获取指定排序集的不可修改视图。 |
4 Java Collections的例子
package com.yiidian;
/**
* 一点教程网: http://www.yiidian.com
*/
/**
* Java Collections的例子
*/
import java.util.*;
public class Demo {
public static void main(String a[]){
List<String> list = new ArrayList<String>();
list.add("C");
list.add("Core Java");
list.add("Servlet");
System.out.println("初始化集合:"+list);
Collections.addAll(list, "Spring","JSP");
System.out.println("往集合添加元素后:"+list);
String[] strArr = {"C#", ".Net"};
Collections.addAll(list, strArr);
System.out.println("往集合添加数组后:"+list);
}
}
输出结果为:
初始化集合:[C, Core Java, Servlet]
往集合添加元素后:[C, Core Java, Servlet, Spring, JSP]
往集合添加数组后:[C, Core Java, Servlet, Spring, JSP, C#, .Net]
5 Java Collections的例子:max()
package com.yiidian;
/**
* 一点教程网: http://www.yiidian.com
*/
/**
* Java Collections的例子
*/
import java.util.*;
public class Demo {
public static void main(String a[]){
List<Integer> list = new ArrayList<Integer>();
list.add(46);
list.add(67);
list.add(24);
list.add(16);
list.add(8);
list.add(12);
System.out.println("集合的最大值是: "+Collections.max(list));
}
}
输出结果为:
集合的最大值是: 67
6 Java Collections的例子:min()
package com.yiidian;
/**
* 一点教程网: http://www.yiidian.com
*/
/**
* Java Collections的例子
*/
import java.util.*;
public class Demo {
public static void main(String a[]){
List<Integer> list = new ArrayList<Integer>();
list.add(46);
list.add(67);
list.add(24);
list.add(16);
list.add(8);
list.add(12);
System.out.println("集合的最小值是: "+Collections.min(list));
}
}
输出结果为:
集合的最小值是: 8
热门文章
优秀文章