HashMapの使い方について教えてください。
DBのテーブルから、「SEMINAR_TITLE」「SEMINAR_PRESENTER_NAME」「SEMINAR_NUM」の
値を取得して、HashMapにセットしようと考えてます。
「SEMINAR_NUM」だけ、数値型となっており、他の2つは文字列となっています。
-------------------------------------------------------------------------------------------
HashMap seminar_list = new HashMap();
//DBから値を取得して、seminar_listにセットする。
seminar_list = dbControl.get_SEMINAR_LIST("001");
String seminar_title = (String)seminar_list.get("SEMINAR_TITLE");
String seminar_presenter_name = (String)seminar_list.get("SEMINAR_PRESENTER_NAME");
int seminar_num = (int)seminar_list.get("SEMINAR_NUM");
-------------------------------------------------------------------------------------------
のような式を書いてみましたが、
int seminar_num = (int)seminar_list.get("SEMINAR_NUM");
のところでエラーとなってしまいます。
(他の2つの値は取得する事ができています)
数値データを取り出すにはどのようにすればよいのでしょうか?
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
すいません、抜けておりました。
>もしくはHashMapからオブジェクトとして取ってきて、その後IntegerのparseInt()を使うとうまくいきます。
ここはObject型で取った後String型に変換しないといけませんでした。
Object o = seminar_list.get("SEMINAR_NUM");
String str = String.valueOf(o);
int num = Integer.parseInt(str);
という感じで。まぁ、こっちよりIntegerでput()したほうが確実ですね。
No.2
- 回答日時:
>HashMap get_SEMINAR_LIST(String id)
ここでDBから取ってきた数値をIntegerにしてputすれば
Integer seminar_num = (Integer)seminar_list.get("SEMINAR_NUM");
でエラーが表示されずうまくいきます。
もしくはHashMapからオブジェクトとして取ってきて、その後IntegerのparseInt()を使うとうまくいきます。
No.1
- 回答日時:
(int)ではなく、(Integer)でもダメだろうか?
ご回答、ありがとうございます。
Integer seminar_num = (Integer)seminar_list.get("SEMINAR_NUM");
と修正していましたが、
java.lang.ClassCastException
エラーとなってしまいました。
ちなみに、
dbControl.get_SEMINAR_LIST("001")
の箇所において、
java.util.HashMap get_SEMINAR_LIST(String seminar_id)
として値を取得するよう設定しSELECT文で複数項目の値を取得するように設定しているのですが、
その箇所を
int get_SEMINAR_num(String seminar_id)
に変更してSELECT文でSEMINAR_NUMの値だけを取得するようにすれば正常に値を取ることができます。
何かわかりますでしょうか?
(何か確認したほうが良い点ありますか?)
よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript [再掲]指定したパスが現URLに含まれていたら特定要素を削除するJavascriptのコードについて 1 2023/05/10 15:09
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- C言語・C++・C# C++プログラミングコードにポリモーフィズムを取り入れ方を教えてください。 2 2023/06/09 11:17
- その他(法律) 講師の自己紹介について 2 2023/06/22 17:21
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- 大学・短大 C言語線形リストの問題です 3 2022/12/22 00:45
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- PHP アコーディオンPHPが上手くいかない 3 2022/07/15 16:29
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「指定されたキャストは有効で...
-
特定の文字列が一致する行から...
-
マルチスレッドで同時にFTPアッ...
-
C# ListBoxのアイテムをユーザ...
-
C#で型変換
-
string→CStringの型変換について
-
Log4jで機能毎に別ファイルへ出...
-
このプログラミング誰か教えて...
-
C言語のポインターに関する警告
-
Javaで改行などが出来ないのです。
-
flush()とclose()について
-
javaで質問です。 文字列2023/2...
-
JSPやサーブレットでSystem.out...
-
[JAVA]try 内の変数を外で!?
-
配列にnullを代入すると、null...
-
VBAで配列の計算
-
Path型をString型へ変換する(Java)
-
変数を動的に作るには?
-
1~100までの数字を表示し、か...
-
このプログラミング誰か教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C# ListBoxのアイテムをユーザ...
-
特定の文字列が一致する行から...
-
strcmp関数などでの複数の文字...
-
C#でIPアドレスの取得について
-
Delphiで改行文字の置換がうま...
-
C#での関数テーブルの作り方
-
C# JSONについて
-
C#でプロパティを使わずXMLにデ...
-
C#で型変換
-
マルチスレッドで同時にFTPアッ...
-
「指定されたキャストは有効で...
-
GridViewで複数のDropDownList...
-
【Java8以降】csvファイルの複...
-
strtokでの空文字への置き換え
-
C++ ファイルからデータを取得
-
C++のSTL mapを使用するとセグ...
-
GDI+ DrawString() で指定範囲...
-
std::stringの継承
-
string→CStringの型変換について
-
2つのリストのマージ方法について
おすすめ情報