在Java中获取HashMap键的集合视图


要在Java中获取HashMap键的集合视图,可以使用名为“keySet()”的内置方法。这里,HashMap是一个用于实现Map接口的类。它以键值对的形式存储元素。键是一个用于获取和接收与其关联的值的对象。它可以访问Map接口的所有方法,本身没有任何额外的方法。不允许重复的值,尽管我们可以存储空值和键。

Java程序:获取HashMap键的集合视图

keySet() 方法

它与HashMap集合的实例一起使用。此方法不需要任何参数,并返回指定集合中所有可用键的集合视图。

语法

HashMapObject.keySet()

要使用HashMap集合,我们需要使用以下语法创建其实例。

语法

HashMap<TypeOfKey, TypeOfValue> nameOfMap = new HashMap<>();

方法

  • 第一步是导入“java.util”包。这将启用HashMap类的使用。

  • 创建HashMap集合的实例。这里,键将是String类型,值将是Integer类型。

  • 现在,使用内置方法“put()”向其中添加一些元素。

  • 使用for-each循环和“keySet()”方法迭代键并打印它们。

示例1

以下示例说明了使用for-each循环的“keySet()”方法。

import java.util.*;
public class Maps {
   public static void main(String[] args) {
      HashMap<String, Integer> workers = new HashMap<>();
      // Adding elements in the workers map
      workers.put("Vaibhav", 4000);
      workers.put("Ansh", 3000);
      workers.put("Vivek", 1500);
      workers.put("Aman", 2000);
      workers.put("Tapas", 2500);
         // printing all the keys of workers map
      System.out.println("List of keys in the map: ");
      for (String unKey : workers.keySet()) { // iterate through keys
         System.out.println("Name: " + unKey);
      }
   }
}

输出

List of keys in the map:
Name: Vivek
Name: Aman
Name: Tapas
Name: Vaibhav
Name: Ansh

方法

  • 创建HashMap集合的实例。这里,键和值都是Integer类型。

  • 将键存储到集合中,并使用迭代器迭代键集合。

  • 现在,使用while循环检查可用键并打印它们。

示例2

以下示例说明了使用迭代器的“keySet()”方法。

import java.util.*;
public class Maps {
   public static void main(String[] args) {
      HashMap<Integer, Integer> cart = new HashMap<>();
      // Adding elements in the cart map
      cart.put(10, 400);
      cart.put(20, 300);
      cart.put(30, 150);
      cart.put(40, 200);
      cart.put(50, 250);
      // printing keys of cart map
      System.out.println("List of keys in the map: ");
      Set keys = cart.keySet(); // storing keys to the set
      Iterator itr = keys.iterator(); // iterating through keys
      while (itr.hasNext()) { // check and print keys
         System.out.println("Quantity: " + itr.next());
      }
   }
}

输出

List of keys in the map: 
Quantity: 50
Quantity: 20
Quantity: 40
Quantity: 10
Quantity: 3

示例3

在以下示例中,我们将获得集合视图,而无需使用for-each循环和迭代器。

import java.util.*;
public class Maps {
   public static void main(String[] args) {
      HashMap<Integer, Integer> cart = new HashMap<>();
      // Adding elements in the cart map
      cart.put(10, 400);
      cart.put(20, 300);
      cart.put(30, 150);
      cart.put(40, 200);
      cart.put(50, 250);
      // printing keys of cart map
      System.out.println("List of keys in the map: ");
      Set keys = cart.keySet(); // storing keys to the set
      Iterator itr = keys.iterator(); // iterating through keys
      while (itr.hasNext()) { // check and print keys
         System.out.println("Quantity: " + itr.next());
      }
   }
}

输出

List of keys in the map:
Quantity: 50
Quantity: 20
Quantity: 40
Quantity: 10
Quantity: 30

结论

HashMap类和Map接口是集合框架的一部分。集合允许将对象分组到单个单元中。在本文中,我们首先定义了HashMap类,然后讨论了一些Java示例程序,以从Java HashMap中获取集合视图。

更新于:2023年7月21日

469 次浏览

启动您的职业生涯

完成课程获得认证

开始学习
广告