私は、地図を持っている:Map in switch caseのint valueの使い方は?
Map<String, Integer> myMap = new HashMap<String, Integer>();
は今、私はいくつかの値を追加しました:
myMap.put("east", generateId());
myMap.put("west", generateId());
myMap.put("north", generateId());
myMap.put("south", generateId());
今、私はスイッチケースを使用して一致をチェックしようとしています:
int i = myMap.get("east");
int j = myMap.get("west");
int k = myMap.get("north");
int l = myMap.get("south");
switch (myId) {
case i:
break;
case j:
break;
case k:
break;
case l:
break;
}
それは一定の言いますすべての場合(i、j、k、l)で必要とされる表現。これをどうやって解決するのですか?
試してみましたが動作しません –
@Zirconこの回答は機能しません。それらは** compile-time **定数でなければなりません。これらの変数はfinal宣言されていません。 – khelwood