Guavaは地図を初期化するための素敵なショートカットを提供します。しかし、マップが9つのエントリに初期化されると、次のコンパイラエラー(Eclipse Indigo)が発生します。タイプImmutableMap
でGuava ImmutableMapを初期化する
方法of(K, V, K, V, K, V, K, V, K, V)
は、メッセージが
アンImmutableMapは、キーの4ペアの最大サイズを持っていると言うように見える引数
(String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String)
ImmutableMap<String,String> myMap = ImmutableMap.of( "key1", "value1", "key2", "value2", "key3", "value3", "key4", "value4", "key5", "value5", "key6", "value6", "key7", "value7", "key8", "value8", "key9", "value9" );
には適用されません値。
明らかに、これは当てはまりませんが、私のイニシャライザのサイズを増やすために何をすべきか分かりません。
誰かが紛失しているものを教えてもらえますか?
私はそれは 'すべきだと思います「put」。また、タイプパラメータは通常、指定する必要があります。正しく記憶されている場合は、 'ImmutableMap。 builder()'です。 –
@PaulBellora:確かにそれはちょうど固定していたはずです:) –
クイック回答ありがとう。グアバを試してみることにしたのは、標準のマップイニシャライザが必要とするすべての「puts」をタイプする必要がないからです。それほど多くのアイデアを! – user903724