CollectionとCollectionsの違いは何ですか?

1554 ワード

1、java.util.Collectionはコレクションインタフェースです.集合オブジェクトを基本的に操作する汎用インタフェースメソッドを提供します.CollectionインタフェースはJavaクラスライブラリに多くの具体的な実装があります.Collectionインタフェースの意味は,様々な具体的な集合に最大化された統一的な動作方式を提供することである.
List,Set,QueueインタフェースはCollectionを継承する.このインタフェースを直接実装するクラスはAbstractCollectionクラスのみであり、このクラスも抽象クラスにすぎず、集合クラス操作のいくつかの基本的な実装を提供している.ListとSetの具体的な実装クラスは,基本的に直接的または間接的にクラスを継承している.
2、java.util.Collectionsはパッケージクラスです.集合操作に関する様々な静的メソッド(集合の検索、ソート、スレッドのセキュリティ化など)が含まれており、ほとんどのメソッドは線形テーブルを処理するために使用されます.このクラスは、JavaのCollectionフレームワークにサービスするツールクラスのようにインスタンス化できません.
参照コード:CollectionsTest
public class CollectionsTest {
	public static void main(String[] args) {
		ArrayList nums = new ArrayList();
		nums.add(8);
		nums.add(-3);
		nums.add(2);
		nums.add(9);
		nums.add(-2);
		
		System.out.println("      :" + nums.isEmpty());
		
		System.out.println("    :" + nums);
		Collections.reverse(nums);
		System.out.println("     :" + nums);
		
		Collections.sort(nums);
		System.out.println("     :" + nums);
		
		Collections.shuffle(nums);
		System.out.println("     :" + nums);
		//                , int    string    
		Collections.sort(nums, new Comparator() {

			@Override
			public int compare(Object o1, Object o2) {
				String s1 = String.valueOf(o1);
				String s2 = String.valueOf(o2);
				return s1.compareTo(s2);
			}

		});
		System.out.println("       :" + nums);
		System.out.println("     :" + Collections.max(nums));
		System.out.println("     :" + Collections.min(nums));
	}
}