JAVAでのコレクションフレームワークの使用法は何ですか
Collection は最も基本的なコレクション インターフェイスです。Collection はオブジェクトのグループ、つまり Collection の要素を表します。Map はキーと値のマッピングを提供します
ArrayList と Vector の違い、 HashMap と Hashtable
回答: ArrayList と Vector は主に 2 つの側面から来ています.
1. 同期性: Vector はスレッド セーフであり、同期されていることを意味しますが、ArrayList はスレッド セーフで同期されていません
2.データの増加: 増加が必要な場合、Vector はデフォルトで 1 レベル増加し、ArrayList は元のサイズの半分だけ増加します。
HashMap と HashTable には 3 つの主要な側面があります。
1. 歴史的な理由: Hashtable は古い Dictionary クラスに基づいており、HashMap は Java 1.2 で導入された Map インターフェイスの実装です。
2. 同期性: Hashtable はスレッドセーフです。つまり、同期的です。 HashMap は安全ではないオンライン プログラムであり、同期ではありません
Three. 値: HashMap のみ、テーブル エントリのキーまたは値として null 値を使用できます
ストレージ パフォーマンスと ArrayList のパフォーマンス、 Vector と LinkedList の機能
ArrayList と Vector はどちらも配列を使用してデータを保存します。配列要素の数は、要素の追加や挿入ができるように、実際に保存されるデータよりも大きいです。両方とも要素にシリアル番号で直接インデックスを付けることができます, ただし、要素の挿入には配列要素の移動などのメモリ操作が含まれるため、データのインデックス付けは高速ですが、データの挿入は低速です。Vector は同期メソッド (スレッド セーフ) を使用するため、通常、そのパフォーマンスは ArrayList よりも劣りますが、LinkedList は二重リンクを使用します。シリアル番号によるデータのインデックス作成には前方または後方のトラバースが必要ですが、データを挿入する場合は、このアイテムの前後のアイテムを記録するだけでよいため、挿入速度が速くなります。
8 4 つのスレッドを設計します。そのうちの 2 つは毎回 j を 1 ずつ増加させ、他の 2 つのスレッドは毎回 j を 1 ずつ減少させます。プログラムを書きます。
次のプログラムは内部クラスを使用してスレッドを実装しており、j を増減するときに順序を考慮しません。
public class ThreadTest1{
private int j;
public static void main(String args[]){
ThreadTest1 tt=new ThreadTest1();
Inc inc=tt.new Inc( );
Dec dec=tt.new Dec();
for(int i=0;i<2;i ){
Thread t=new Thread(inc);
t.start ();
t=new Thread(dec);
t.start();
}
}
private synchronized void inc(){
j ;
System .out.println(Thread.currentThread().getName() "-inc:" j);
}
private synchronized void dec(){
j--;
System.out. println(Thread.currentThread().getName() "-dec:" j);
}
class Inc は Runnable を実装します{
public void run(){
for(int i =0;iinc();
}
}
}
class Dec は Runnable を実装します{
public void run(){
for (int i=0;idec();
}
}
}
}
以上がJAVAでのコレクションフレームワークの使用法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Java の乱数ジェネレーターのガイド。ここでは、Java の関数について例を挙げて説明し、2 つの異なるジェネレーターについて例を挙げて説明します。

Java の Weka へのガイド。ここでは、weka java の概要、使い方、プラットフォームの種類、利点について例を交えて説明します。

この記事では、Java Spring の面接で最もよく聞かれる質問とその詳細な回答をまとめました。面接を突破できるように。

Java 8は、Stream APIを導入し、データ収集を処理する強力で表現力のある方法を提供します。ただし、ストリームを使用する際の一般的な質問は次のとおりです。 従来のループにより、早期の中断やリターンが可能になりますが、StreamのForeachメソッドはこの方法を直接サポートしていません。この記事では、理由を説明し、ストリーム処理システムに早期終了を実装するための代替方法を調査します。 さらに読み取り:JavaストリームAPIの改善 ストリームを理解してください Foreachメソッドは、ストリーム内の各要素で1つの操作を実行する端末操作です。その設計意図はです

Java での日付までのタイムスタンプに関するガイド。ここでは、Java でタイムスタンプを日付に変換する方法とその概要について、例とともに説明します。

Java は、初心者と経験豊富な開発者の両方が学習できる人気のあるプログラミング言語です。このチュートリアルは基本的な概念から始まり、高度なトピックに進みます。 Java Development Kit をインストールしたら、簡単な「Hello, World!」プログラムを作成してプログラミングを練習できます。コードを理解したら、コマンド プロンプトを使用してプログラムをコンパイルして実行すると、コンソールに「Hello, World!」と出力されます。 Java の学習はプログラミングの旅の始まりであり、習熟が深まるにつれて、より複雑なアプリケーションを作成できるようになります。
