[解決済み] HashMapとintをキーとする
2022-05-18 14:07:49
質問
整数をキー、オブジェクトを値とするHashMapを構築しようとしています。
私の構文は次のとおりです。
HashMap<int, myObject> myMap = new HashMap<int, myObject>();
しかし、返されたエラーは - Syntax error on token "int", Dimensions expected after this token - 私はキーとして数字を保存する必要があるだけなので、なぜ次元を追加しなければならないのか(つまり、intを配列にする)理解できない。
私は何をすることができますか?
事前にありがとうございます! :)
どのように解決するのですか?
HashMapは内部でオブジェクトをキーとして使っているので、プリミティブは使えません。そのため、Objectを継承したオブジェクト(つまり、任意のオブジェクト)しか使えません。
これはHashMapのput()関数ですが、見ての通りKにObjectを使用しています。
public V put(K key, V value) {
if (key == null)
return putForNullKey(value);
int hash = hash(key);
int i = indexFor(hash, table.length);
for (Entry<K,V> e = table[i]; e != null; e = e.next) {
Object k;
if (e.hash == hash && ((k = e.key) == key || key.equals(k))) {
V oldValue = e.value;
e.value = value;
e.recordAccess(this);
return oldValue;
}
}
modCount++;
addEntry(hash, key, value, i);
return null;
}
"k = e.key"という式でわかるはずです。
Integerのようなラッパーを使い、autoboxingすることをお勧めします。
関連
-
Eclipse問題 アクセス制限。タイプ 'SunJCE' が API でないことを解決し、/jdk ディレクトリにある /jre と jre の違いについて理解を深める。
-
Git Pull Failed マージされていないファイルがあるため、Pull できません。
-
[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?
-
[解決済み] Javaにおけるpublic、protected、package-private、privateの違いは何ですか?
-
[解決済み] JavaでStringをintに変換するにはどうしたらいいですか?
-
[解決済み] serialVersionUIDとは何ですか、またなぜそれを使用する必要がありますか?
-
[解決済み] HashMapを直接(リテラルに)初期化する方法は?
-
[解決済み] ハッシュマップのキーを指定して、値を更新するには?
-
[解決済み] Java Hashmap。値からキーを取得する方法は?
-
[解決済み】HashMap、LinkedHashMap、TreeMapの違いについて
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Javaクラスが "Error occurred during initialization of boot layer "というエラーで実行される。
-
unsigned char* から const jbyte* {aka const signed char*} への変換が無効です。
-
java -jarコマンドでパッケージを実行すると、無効または破損したjarfile xxxx.jarが表示される。
-
アノテーション「@Retention」の役割
-
java send https request prompt java.security.cert.について。
-
API の戻り値を処理するために ResponseEntity を使用する
-
Javaがリソースリークに遭遇した:'input'が閉じない 解決方法
-
ecplise プロンプトが表示されます。"選択したものは起動できません。" "最近の起動はありません。"
-
[解決済み] SparseArrayとHashMapの比較
-
[解決済み] java: HashMap<String, int>が動作しない。