ハッシュマップの値にアクセス[複製]

Access values of hashmap [duplicate]


質問 written by Community @2017-05-23 12:22:55Z

: 6 : 4 : 44

可能な重複:
マップ内の各エントリを反復するにはどうすればよいですか?

MAP、 Map<String, Records> map = new HashMap<String, Records> ();

public class Records 
{
    String countryName;
    long numberOfDays;

    public String getCountryName() {
        return countryName;
    }
    public void setCountryName(String countryName) {
        this.countryName = countryName;
    }
    public long getNumberOfDays() {
        return numberOfDays;
    }
    public void setNumberOfDays(long numberOfDays) {
        this.numberOfDays = numberOfDays;
    }

    public Records(long days,String cName)
    {
        numberOfDays=days;
        countryName=cName;
    }

    public Records()
    {
        this.countryName=countryName;
        this.numberOfDays=numberOfDays;
    }

mapのメソッドを実装しました。ハッシュマップに存在するすべての値にアクセスするにはどうすればよいか教えてください。 私はAndroidのUIにそれらを表示する必要がありますか?

コメント 1

どのエラーに遭遇しましたか?レコードに割り当てたキーでレコードを取得できるか、foreachループで反復処理できます。

written by ドログバ @2012-10-22 08:50:21Z

回答 1 written by Community @2017-05-23 12:33:04Z
1

HashMapからkeysvalues並行してアクセスする場合は、 Map#entrySetメソッドを使用できますMap#entrySet

Map<String, Records> map = new HashMap<String, Records> ();

//Populate HashMap

for(Map.Entry<String, Record> entry: map.entrySet()) {
    System.out.println(entry.getKey() + " : " + entry.getValue());
}

また、 RecordクラスのtoStringメソッドをオーバーライドして、 for-eachループでinstancesを印刷するときにinstances文字列表現を取得できます。

更新 :-

keyに基づいてアルファベット順にMapを並べ替える場合は、 MapTreeMap変換できます。 キーでソートされたエントリを自動的に配置します:-

If you want to sort your Map on the basis of key in alphabetical order, you can convert your Map to TreeMap. It will automatically put entries sorted by keys: -

詳細な説明については、この投稿を参照してください。- Javaでキーによってマップ値をソートする方法

コメント 1

キーをアルファベット順に並べ替える方法はありますか?

written by user1737894 @2012-10-22 09:02:30Z

コメント 2

@onkar。その場合にはTreeMapを使用できます。この投稿を参照してください。- stackoverflow.com/

written by questions/922528 @2012-10-22 09:08:56Z

回答 2 written by Edward @2012-11-24 05:48:18Z
4

あなたはforループを使用してそれを行うことができます

Set keys = map.keySet();   // It will return you all the keys in Map in the form of the Set


for (Iterator i = keys.iterator(); i.hasNext();) 
{

      String key = (String) i.next();

      Records value = (Records) map.get(key); // Here is an Individual Record in your HashMap
}
回答 3 written by Igor Patsyan @2019-08-15 14:38:39Z
0

HashMapでデータを準備している場合は、 HashMapキーを反復処理するだけです。 反復を実装し、データを1つずつ取得するだけです。

チェック: HashMapを反復処理する

回答 4 written by Igor Patsyan @2019-08-15 14:43:12Z
0

map.values()は、 HashMapすべての値を含むCollectionを提供します。