Java で静的マップを初期化するための静的初期化子とインスタンス初期化子
Java では、静的マップの初期化には、選択に影響を与える可能性のある特定の影響が伴います。初期化メソッドの
Staticイニシャライザ:
長所:
短所:
インスタンス初期化子 (匿名サブクラス):
長所:
短所:
を使用した不変静的マップ静的初期化子:
不変性が優先される場合は、静的イニシャライザを使用した不変マップ。最初に可変マップをインスタンス化してデータを設定し、次に Collections.unmodifiableMap() を使用して不変バージョンを作成します。
public class Test { private static final Map<Integer, String> myMap; static { Map<Integer, String> aMap = ...; aMap.put(1, "one"); aMap.put(2, "two"); myMap = Collections.unmodifiableMap(aMap); } }
結論として、基本的な静的マップの初期化では、静的イニシャライザはクリーンで効率的なソリューションを提供します。ただし、不変性が要求されるシナリオでは、静的初期化子を使用して不変マップを作成することが堅牢なアプローチとなります。
以上が静的イニシャライザとインスタンス イニシャライザ: Java で静的マップを初期化するにはどちらが最適ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。