のHashMapにリストから項目を置く:のJava:私はここにリスト持って効率的に
List<QueryStrings> queryStrings
とクエリ文字列は、私はどこのHashMapにリストを配置する必要があり
public class QueryStrings {
private Integer id;
private String rel;
private String impl;
}
だけの単純なクラスですidがキーになります、私は一度にリストの項目をループし、今、この権利のようにそれをやっている:
HashMap<Integer, QueryStrings> queryMap = new HashMap<>();
for (QueryStrings element : queryStrings) {
Integer thisId = Integer.parseInt(element.getId());
queryMap.put(thisId, element);
}
はベティがありますこの方法は?私は各項目をループしたくないです、それは可能ですか?
編集:
申し訳ありませんが、私は整数を解析するべきではありませんので、コードは次のようになります。それはすでにint型かどう
HashMap<Integer, QueryStrings> queryMap = new HashMap<>();
for (QueryStrings element : queryStrings) {
queryMap.put(element.getId(), element);
}
が、私はこのような何かがJava8 に働くだろうと考えている '地図<整数、クエリ文字列> queryMap = queryStrings.stream()(toMap(element.getId()、要素))を集める;' –
なぜ '呼び出しますparseInt() '? 'id'は既に' Integer'型です。直接IDを使用してください。 – markspace
@ScaryWombat idはIntergerが正しいのですか?なぜ解析する必要があるのですか – soorapadman