首页 > Java > java教程 > 正文

使用Hashtable类的put()方法将键值对插入到Hashtable中

王林
发布: 2023-07-25 09:29:17
原创
961 人浏览过

Hashtable是Java中的一个数据结构类,用于存储键值对。它基于哈希表的实现方式,可以高效地进行元素的插入、查找和删除操作。在Hashtable类中,插入键值对的方法是put()方法。

put()方法用于将指定的键值对插入到Hashtable中。它接受两个参数,第一个参数是键(key),用于唯一地标识一个值;第二个参数是值(value),是要存储的数据。下面是使用Hashtable类的put()方法插入键值对的代码示例:

import java.util.Hashtable;

public class HashtableExample {
    public static void main(String[] args) {
        // 创建一个Hashtable对象
        Hashtable<String, Integer> hashtable = new Hashtable<>();

        // 插入键值对
        hashtable.put("apple", 1);
        hashtable.put("banana", 2);
        hashtable.put("orange", 3);

        // 输出Hashtable中的键值对
        System.out.println(hashtable);
    }
}
登录后复制

在上面的代码中,首先创建了一个Hashtable对象。注意到在创建Hashtable对象时,我们使用了泛型来指定键和值的类型。这里我们指定键的类型为String,值的类型为Integer。

然后,通过调用put()方法,我们将三个键值对依次插入到Hashtable中。键分别是"apple"、"banana"和"orange",对应的值分别是1、2和3。

最后,我们使用System.out.println()方法输出Hashtable中的键值对。运行上述代码,输出结果如下:

{orange=3, apple=1, banana=2}
登录后复制
登录后复制

可以看到,输出的结果是一个以键值对形式表示的Hashtable。Hashtable中的键值对是无序的,但是通过put()方法插入的顺序将会被保留。

除了使用put()方法将键值对插入Hashtable中,还可以使用putIfAbsent()方法来插入键值对。putIfAbsent()方法在插入时会先判断指定的键是否已经存在,如果不存在才会插入。

import java.util.Hashtable;

public class HashtableExample {
    public static void main(String[] args) {
        // 创建一个Hashtable对象
        Hashtable<String, Integer> hashtable = new Hashtable<>();

        // 插入键值对
        hashtable.putIfAbsent("apple", 1);
        hashtable.putIfAbsent("banana", 2);
        hashtable.putIfAbsent("orange", 3);
        hashtable.putIfAbsent("apple", 4);

        // 输出Hashtable中的键值对
        System.out.println(hashtable);
    }
}
登录后复制

在上述代码中,我们使用putIfAbsent()方法插入了四个键值对,其中有一个键"apple"已经存在。运行代码,输出结果如下:

{orange=3, apple=1, banana=2}
登录后复制
登录后复制

可以看到,在插入键为"apple"的键值对时,由于已经存在相同的键,所以不会进行插入操作。

总结一下,使用Hashtable类的put()方法可以将键值对插入到Hashtable中。如果要确保插入的键不存在,可以使用putIfAbsent()方法来插入。无论哪种方式,插入的键值对将会按照插入的顺序保留在Hashtable中。

以上是使用Hashtable类的put()方法将键值对插入到Hashtable中的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板