首页  ·  知识 ·  编程语言
在Java中遍历HashMap的5种最佳方式
CIO之家的朋友  CIO之家的朋友们  JAVA  编辑:情癫大圣   图片来源:网络
在本文中,我们将通过示例讨论在Java上遍历HashMap[3]的五种最佳方法。使用Iterator遍历HashMapEntrySet使用Iterator遍历HashMapKeySet

在本文中,我们将通过示例讨论在 Java 上遍历 HashMap[3] 的五种最佳方法。


使用 Iterator 遍历 HashMap EntrySet


使用 Iterator 遍历 HashMap KeySet


使用 For-each 循环迭代 HashMap


使用 Lambda 表达式[4]遍历 HashMap


使用 Stream API[5] 遍历 HashMap


1. 使用 Iterator 遍历 HashMap EntrySet


package com.java.tutorials.iterations;


import java.util.HashMap;

import java.util.Iterator;

import java.util.Map;

import java.util.Map.Entry;


/**

 * 在 Java 中遍历 HashMap 的5种最佳方法

 * @author Ramesh Fadatare

 *

 */

public class IterateHashMapExample {

    public static void main(String[] args) {

        // 1. 使用 Iterator 遍历 HashMap EntrySet

        Map < Integer, String > coursesMap = new HashMap < Integer, String > ();

        coursesMap.put(1, "C");

        coursesMap.put(2, "C++");

        coursesMap.put(3, "Java");

        coursesMap.put(4, "Spring Framework");

        coursesMap.put(5, "Hibernate ORM framework");


        Iterator < Entry < Integer, String >> iterator = coursesMap.entrySet().iterator();

        while (iterator.hasNext()) {

            Entry < Integer, String > entry = iterator.next();

            System.out.println(entry.getKey());

            System.out.println(entry.getValue());

        }

    }

}

Output:


1

C

2

C++

3

Java

4

Spring Framework

5

Hibernate ORM framework

2. 使用 Iterator 遍历 HashMap KeySet

package com.java.tutorials.iterations;


import java.util.HashMap;

import java.util.Iterator;

import java.util.Map;


/**

 * 在 Java 中遍历 HashMap 的5种最佳方法

 * @author Ramesh Fadatare

 *

 */

public class IterateHashMapExample {

    public static void main(String[] args) {

        Map < Integer, String > coursesMap = new HashMap < Integer, String > ();

        coursesMap.put(1, "C");

        coursesMap.put(2, "C++");

        coursesMap.put(3, "Java");

        coursesMap.put(4, "Spring Framework");

        coursesMap.put(5, "Hibernate ORM framework");


        // 2. 使用 Iterator 遍历 HashMap KeySet

        Iterator < Integer > iterator = coursesMap.keySet().iterator();

        while (iterator.hasNext()) {

            Integer key = iterator.next();

            System.out.println(key);

            System.out.println(coursesMap.get(key));

        }

    }

}

Output:


1

C

2

C++

3

Java

4

Spring Framework

5

Hibernate ORM framework

3. 使用 For-each 循环遍历 HashMap

package com.java.tutorials.iterations;


import java.util.HashMap;

import java.util.Map;


/**

 * 在 Java 中遍历 HashMap 的5种最佳方法

 * @author Ramesh Fadatare

 *

 */

public class IterateHashMapExample {

    public static void main(String[] args) {

        Map < Integer, String > coursesMap = new HashMap < Integer, String > ();

        coursesMap.put(1, "C");

        coursesMap.put(2, "C++");

        coursesMap.put(3, "Java");

        coursesMap.put(4, "Spring Framework");

        coursesMap.put(5, "Hibernate ORM framework");


        // 3. 使用 For-each 循环遍历 HashMap

        for (Map.Entry < Integer, String > entry: coursesMap.entrySet()) {

            System.out.println(entry.getKey());

            System.out.println(entry.getValue());

        }

    }

}

Output:


1

C

2

C++

3

Java

4

Spring Framework

5

Hibernate ORM framework

4. 使用 Lambda 表达式遍历 HashMap


package com.java.tutorials.iterations;


import java.util.HashMap;

import java.util.Map;


/**

 * 在 Java 中遍历 HashMap 的5种最佳方法

 * @author Ramesh Fadatare

 *

 */

public class IterateHashMapExample {

    public static void main(String[] args) {

        Map < Integer, String > coursesMap = new HashMap < Integer, String > ();

        coursesMap.put(1, "C");

        coursesMap.put(2, "C++");

        coursesMap.put(3, "Java");

        coursesMap.put(4, "Spring Framework");

        coursesMap.put(5, "Hibernate ORM framework");


        // 4. 使用 Lambda 表达式遍历 HashMap

        coursesMap.forEach((key, value) -> {

            System.out.println(key);

            System.out.println(value);

        });

    }

}

Output:


1

C

2

C++

3

Java

4

Spring Framework

5

Hibernate ORM framework

5. 使用 Stream API 遍历 HashMap


package com.java.tutorials.iterations;


import java.util.HashMap;

import java.util.Map;


/**

 * 在 Java 中遍历 HashMap 的5种最佳方法

 * @author Ramesh Fadatare

 *

 */

public class IterateHashMapExample {

    public static void main(String[] args) {

        Map < Integer, String > coursesMap = new HashMap < Integer, String > ();

        coursesMap.put(1, "C");

        coursesMap.put(2, "C++");

        coursesMap.put(3, "Java");

        coursesMap.put(4, "Spring Framework");

        coursesMap.put(5, "Hibernate ORM framework");


        // 5. 使用 Stream API 遍历 HashMap

        coursesMap.entrySet().stream().forEach((entry) - > {

            System.out.println(entry.getKey());

            System.out.println(entry.getValue());

        });

    }

}

Output:


1

C

2

C++

3

Java

4

Spring Framework

5

Hibernate ORM framework


本文作者:CIO之家的朋友 来源:CIO之家的朋友们
CIO之家 www.ciozj.com 微信公众号:imciow
    >>频道首页  >>网站首页   纠错  >>投诉
版权声明:CIO之家尊重行业规范,每篇文章都注明有明确的作者和来源;CIO之家的原创文章,请转载时务必注明文章作者和来源;
延伸阅读
也许感兴趣的
我们推荐的
主题最新
看看其它的