をハッシュマップを埋める可能性の重複:初期化時にJavaでHashMapを埋めるためにどのように
How to Initialise a static Map in Java作成中
、このような可能なものでしょうか?
public static Map<byte,int> sizeNeeded=new HashMap<byte,int>(){1,1};
をハッシュマップを埋める可能性の重複:初期化時にJavaでHashMapを埋めるためにどのように
How to Initialise a static Map in Java作成中
、このような可能なものでしょうか?
public static Map<byte,int> sizeNeeded=new HashMap<byte,int>(){1,1};
バイト、intはプリミティブであり、コレクションはオブジェクト上で動作します。あなたは、あなたがJavaでジェネリック型パラメータとしてプリミティブを持つことができない、この
public static Map<Byte, Integer> sizeNeeded = new HashMap<Byte, Integer>() {
{
put(new Byte("1"), 1);
put(new Byte("2"), 2);
}
;
};
このようなものは、新しいマップを作成する必要があり、それがデータ
すべてのファーストを埋めるために入れたメソッドを呼び出しますinitializer blockを使用してMap<byte,int>
は不可能なので、Map<Byte,Integer>
にする必要があります。
第2に、現在、Javaにコレクションリテラルはありません。ただし、Project Coinの新機能と見なされています。残念ながら、それらはJava 7から削除され、Java 8まで待たなければなりません。
なぜdownvote ?? –
私はそうではありませんが、おそらく '新しいByte((byte)1)'のためです。オートボックスに頼らないかもしれません..そして、init節の最後に ';'使われません。 – dacwe
@dacweキャストのことを指摘してくれてありがとう。 –