Java では、マップの値を string、double、または int に変更できますか。たとえば、すべてのキーが名前であるが、値は数字、名前、または 10 進数の場合があります。出力は次のようになります(太字はユーザー入力です)
Greg marley
Mandy 12
John 1.8
**{Greg=marley, Mandy=12, John=1.8}**
可能。使用する
Map<String,Object>
しかし、これを正しい方法で使用していると確信していますか?
はい、できます。
キーと値の両方がプリミティブではないオブジェクトでなければならないため、
文字列は明らかであり、他のプリミティブ、つまりint、doubleは対応するラッパーにラップされます。整数、倍精度
はい、できます。
JDK 1.5 以降を使用している場合
Map<String, Object> map;
ただし、JDK 1.4 およびその他の場合
Map map;
Map<String, Object> mapName = new HashMap<>();
キー文字列
値
Object
型
引き続きご利用いただけますMap<String, String>
。
int/decimal 値を文字列として格納し、特定の型に解析します。
キーが文字列で、値がオブジェクトの型である Map を使用してください。そのため、キャストします。
Map<String, Object>
後でマップを反復できます..印刷したい場合..