Shutterstock_148972376存储和集合数据是软件应用程序的例程任务。是一个以数据为中心的应用程序,存储在特定课程中注册的学生记录或天气更新移动应用程序,每个应用程序以某种方式都需要存储一系列数据。这是因为这个原因,许多编程语言提供内置类,用于存储这些集合。.NET Framework提供用于存储数据的集合和通用集合类。同样,Java还包含几个类,可以以集合的形式存储数据;这些类包括数组,列表和词典。本文介绍了java字典类的简要介绍,以键和值对的形式存储集合。

有关更多详细的Java教程,请查看Udemy.com的课程。

什么是Java字典课?

Java字典类是一个抽象类,允许所有派生类以键值对的形式存储数据。两个键和值都可以是任何类型的对象,但键应该是唯一的。此外,两个键和值都不能为null。例如,如果键或值指向NULL,然后插入字典中,则会发生NULLPOINTEXception错误。因此,它必须提供用于存储两个键和值的非空值。

Java字典课程如何实现?

Java字典类现在已过时,目前所有的集合类型都以键值对的形式存储数据,实现Java Map接口。但是,java字典类变量仍可用于存储对实现地图界面的Hashtable类的引用。实现地图界面和以键值对形式存储数据的三个主要类如下:

  1. 哈希表
  2. Hashmap.
  3. linkedhashmap.

Java字典示例

本节包含哈希表,hashmap和linkedhashmap类的简要示例,其存储与字典集合类似的键值对形式的值。Hashtable对象存储在字典类型变量中,因为它直接从字典继承。但是,如前所述,在Java中弃用了字典类,现在存储在键值对形式的集合中存储新的地图界面;因此,HashMap和LinkedHashMap对象将存储在地图类型变量中,如以下示例所示。第一个示例演示了字典类的Hashtable实现。该代码如下所示:

哈希表

字典城市=新的哈希表();城市。普通(“纽约”,“美国”);城市。分价(“多伦多”,“加拿大”);城市。分价(“曼彻斯特”,“英国”);城市。分价(“柏林”,“德国”);为了(枚举城= cities.keys(); city.hasmoreElements();){string key =(string)city.nextElement();系统。出去.println(“键:”+键+“值:”+城市.Get(key));}

在上面的示例中,通过存储其中的哈希可键入对象来实例化名称类型的字典类型变量。为了将数据存储到哈希表,使用“PUT”方法。此方法需要两个参数。第一个参数是可以是任何类型的键,第二个参数是与密钥相关联的值。该值也可以是任何类型的。

这里值得记住的点是键必须是唯一的。例如,在城市中,钥匙指的是城市名称,相应的价值观是这些城市所在的国家。如果在哈希表中再次插入一个关键的“newyork”,则不会产生任何错误。但是,如果遍历城市收藏,则关键“纽约”只会出现一次,这意味着哈希可忽略重复的键。

为了获取所有键,在Hashtable的实例上调用密钥方法,其返回枚举形式的所有密钥。接下来,可以在返回的枚举上调用NextEled方法,返回true,直到遍历枚举中的所有元素。

要获取与每个键关联的值,在Hashtable的实例上调用Get方法,密钥作为参数传递给该方法。这返回与指定键关联的值。上述代码的输出将是:

关键:曼彻斯特价值:英国

关键:纽约价值:美国

关键:多伦多价值:加拿大

关键:柏林价值:德国

java新的和它的必需品?看看udemy.com课程。

Hashmap.

HashMap在其功能中与哈希表相似,因为它们都以键值对的形式存储数据集合。HashMap和Hashtable集合之间的区别在于Hashtable也实现了字典和地图界面。HashMap类仅实现地图界面,也不直接从字典类继承。以下示例演示了HashMap如何用于存储密钥值对与存储在最后一个示例中的Hashtable中的相同密钥和值的键值对:

地图城市=新的hashmap();城市.put(“纽约”,“美国”);城市。分价(“多伦多”,“加拿大”);城市。分价(“曼彻斯特”,“英国”);城市。分价(“柏林”,“德国”);设置CityKeys = Cities.keyset();为了(迭代师城= CityKeys.Iterator(); city.hasnext();){String key =(String)city.next();系统。出去.println(“键:”+键+“值:”+城市.Get(key));}

在上面的代码中,实例化了HashMap类,并将对象的引用存储在名为Cition的地图类型变量中。使用PUT方法,在HashMap中插入元件的过程类似于Hashtable。然而,穿过键的过程有点不同。

与keys方法返回包含特定集合中的所有密钥的枚举的哈希表不同,HashMap使用返回集合的keyset()方法。然后,迭代器可以通过在迭代器上调用哈乱法来遍历此集。要在键集中获取下一个键,可以在迭代器上调用下一个方法。返回的值被解析为字符串数据类型并显示为控制台上的输出。

要获取与特定密钥关联的元素,可以使用Get方法。与Hashtable一样,此方法接受作为参数的键,并返回与该键相关联的值。上述代码的输出与哈希表示例类似。

LinkedHashMap的实现类似于除了在最后一个示例中替换与LinkedHashMap的HashMap的构造函数。输出也将是相似的。

看看Udemy.com课程以了解更多的编程必需品。

Java的顶级课程

Selenium webdriver与java -basics到高级+框架
拉胡尔·赫尔蒂
4.6 (58,964)
畅销书
Java反应性编程[来自Scratch]
vinoth selvaraj.
4.5 (34)
Java 8简单的新功能
杜尔加斯州杜尔加
4.6 (6,794)
开发Minecraft插件(Java)
斯蒂芬·金
4.8 (2,067)
畅销书
Java 9简单的新功能:JShell,JPMS等
杜尔加斯州杜尔加
4.9 (441)
完整的核心Java课程:学习代码
Dezlearn教育
4.5 (737)
Java设计模式
Bharath thippiveddy.
4.5 (609)
Java:简化了多线程和并发性
SAGAR UPPULURI.
4.5 (416)
Java编程:逐步从A到Z
Holczer Balazs.
4.6 (578)

更多的Java课程

Java学生还学习

赋予你的团队。引领行业。

通过Udemy为Business获取组织的在线课程和数字学习工具库的订阅。

请求演示