Java常用API之HashTable类解读

写在开头:本文用于作者学习Java常用API

我将官方文档中HashTable 1.6版本中类中所有API全测了一遍并打印了结果,日拱一卒,常看常新

clear()

@Test
    public void test_clear(){
        //将此哈希表清空,使其不包含任何键。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.clear();
        System.out.println(ha);
    }

clone()

@Test
    public void test_clone(){
        //创建此哈希表的浅表副本
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");

        Object clone = ha.clone();
        System.out.println(clone);
        //{4=xiaoli, 3=xiaoming, 2=xioxiao, 1=dahua}
    }

contains()

@Test
    public void test_contains(){
        //测试此映射表中是否存在与指定键对应的值。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");

        boolean dahua = ha.contains("dahua");
        System.out.println(dahua);//true
    }

containsKey()

@Test
    public void test_containsKey(){
        //测试此映射表中是否存在与指定键对应的值。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");

        boolean b = ha.containsKey(4);
        System.out.println(b);//true

        boolean b1 = ha.containsKey(5);
        System.out.println(b1);//false
    }

containsValue()

@Test
    public void test_containsValue(){
        //如果此 Hashtable 将一个或多个键映射到此值,则返回 true。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        boolean dahua = ha.containsValue("dahua");
        System.out.println(dahua);
    }

entrySet()

@Test
    public void test_entrySet(){
        //返回此映射中包含的键的 Set 视图。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        Set<Map.Entry<Object, Object>> entries = ha.entrySet();
        System.out.println(entries);//[5=dahua, 4=xiaoli, 3=xiaoming, 2=xioxiao, 1=dahua]
    }

equals()

@Test
    public void test_equals(){
        //按照 Map 接口的定义,比较指定 Object 与此 Map 是否相等。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        Hashtable<Object, Object> ha1 = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        boolean equals = ha.equals(ha);
        System.out.println(equals);//true

        boolean equals1 = ha.equals(ha1);
        System.out.println(equals1);//false
    }

get()

@Test
    public void test_get(){
        //返回指定键所映射到的值,如果此映射不包含此键的映射,则返回 null.
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        System.out.println(ha.get(1));//dahua
    }

hashCode()

@Test
    public void test_hashCode(){
        //按照 Map 接口的定义,返回此 Map 的哈希码值。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        int i = ha.hashCode();
        System.out.println(i);//1935040118
    }

isEmpty()

@Test
    public void test_isEmpty(){
        //测试此哈希表是否没有键映射到值
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        boolean empty = ha.isEmpty();
        System.out.println(empty);//false
    }

keys()

@Test
    public void test_keys(){
        // 返回此哈希表中的键的枚举
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        Enumeration<Object> keys = ha.keys();
        while (keys.hasMoreElements()){
            System.out.println(keys.nextElement());
        }
        /*5
        4
        3
        2
        1
        */
    }

keySet()

@Test
    public void test_keySet(){
        // 返回此映射中包含的键的 Set 视图
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        Set<Object> objects = ha.keySet();
        System.out.println(objects);//[5, 4, 3, 2, 1]
    }

putAll()

@Test
    public void test_putAll(){
        // 将指定映射的所有映射关系复制到此哈希表中,这些映射关系将替换此哈希表拥有的、针对当前指定映射中所有键的所有映射关系
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");


        Hashtable<Object, Object> ha1 = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(6,"dahua");

        ha.putAll(ha1);
        System.out.println(ha);//{6=dahua, 5=dahua, 4=xiaoli, 3=xiaoming, 2=xioxiao, 1=dahua}
    }

remove()

@Test
    public void test_remove(){
        //从哈希表中移除该键及其相应的值。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        Object remove = ha.remove(1);
        System.out.println(remove);//dahua

        System.out.println(ha);//{5=dahua, 4=xiaoli, 3=xiaoming, 2=xioxiao}

    }

size()

@Test
    public void test_size(){
        //返回此哈希表中的键的数量。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        System.out.println(ha.size());//5

    }

toString()

@Test
    public void test_toString(){
        //返回此 Hashtable 对象的字符串表示形式,其形式为 ASCII 字符 ", " (逗号加空格)分隔开的、括在括号中的一组条目。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        System.out.println(ha.toString());//{5=dahua, 4=xiaoli, 3=xiaoming, 2=xioxiao, 1=dahua}
    }

values()

@Test
    public void test_values(){
        //返回此 Hashtable 对象的字符串表示形式,其形式为 ASCII 字符 ", " (逗号加空格)分隔开的、括在括号中的一组条目。
        Hashtable<Object, Object> ha = new Hashtable<>();
        ha.put(1,"dahua");
        ha.put(2,"xioxiao");
        ha.put(3,"xiaoming");
        ha.put(4,"xiaoli");
        ha.put(5,"dahua");

        Collection<Object> values = ha.values();
        System.out.println(values);//[dahua, xiaoli, xiaoming, xioxiao, dahua]
    }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/598954.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ICDE2024 |VDTuner:向量数据库自动调优技术

在CodeFuse接入实际业务的过程中&#xff0c;大模型的推理成本以及生成内容的准确性是产品规模落地的两个核心考量因素。为了降低推理成本&#xff0c;我们研发了CodeFuse-ModelCache语义缓存加速功能&#xff0c;通过引入Cache机制&#xff0c;缓存已经计算的结果&#xff0c;…

Spring Security基础教程:从入门到实战

作者介绍&#xff1a;✌️大厂全栈码农|毕设实战开发&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。 推荐订阅精彩专栏 &#x1f447;&#x1f3fb; 避免错过下次更新 Springboot项目精选实战案例 更多项目&#xff1a;CSDN主页YAML墨韵 学如逆水行舟&#xff0c…

Windows系统安装MySQL数据库详细教程

【确认本地是否安装mysql】 &#xff08;1&#xff09;按【winr】快捷键打开运行&#xff1b; &#xff08;2&#xff09;输入services.msc&#xff0c;点击【确定】&#xff1b; &#xff08;3&#xff09;在打开的服务列表中查找mysql服务&#xff0c;如果没有mysql服务&am…

【WEB前端2024】开源智体世界:乔布斯3D纪念馆-第16课-跳转私信

【WEB前端2024】开源智体世界&#xff1a;乔布斯3D纪念馆-第16课-跳转私信 使用dtns.network德塔世界&#xff08;开源的智体世界引擎&#xff09;&#xff0c;策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtns.network是一款主要由JavaScript编写的智体世界引擎&am…

猫咪没精神不吃饭?这招主食冻干喂养教你让猫咪恢复食欲

猫突然不吃东西没精神是生病了吗&#xff1f;当猫咪不吃东西、精神不振时&#xff0c;可能的原因有健康问题、环境因素或食物原因。首先应进行身体检查&#xff0c;观察是否有其他并发症&#xff0c;如无则可排除健康问题。还要给猫咪提供一个舒适的环境&#xff0c;多给它们一…

Elsevier旗下双1区TOP刊,8.8分影响因子加上超低自引率,各指标领跑计算机类SCI

【SciencePub学术】 今天小编给大家带来了一本计算机类的高分优刊解读&#xff0c;隶属于Elsevier出版社&#xff0c;JCR1区&#xff0c;中科院1区TOP&#xff0c;影响因子高达8.7&#xff0c;领域相符的学者可考虑&#xff01; APPLIED SOFT COMPUTING 1 期刊概况 【期刊简…

从零开始搭建Springboot项目脚手架2:配置文件、返回值、日志等

1、多个环境与配置文件 2、统一返回值 返回值包括两种场景&#xff1a;正常controller的返回、异常发生之后返回 正常controller的返回&#xff1a;通过在controller的默认返回Response实现 异常发生之后返回&#xff1a;通过全局异常处理统一捕获返回 首先创建类StatusCode…

windows安装ElasticSearch以及踩坑

1.下载 elasticsearch地址&#xff1a;Past Releases of Elastic Stack Software | Elastichttps://www.elastic.co/cn/downloads/past-releases#elasticsearch IK分析器地址&#xff1a;infinilabs/analysis-ik: &#x1f68c; The IK Analysis plugin integrates Lucene IK…

C++:多态-重写和重载

重写&#xff08;Override&#xff09;和重载&#xff08;Overload&#xff09;是面向对象编程中常用的两个概念&#xff0c;它们虽然都涉及到方法的定义&#xff0c;但是在实现和使用上有着不同的特点。 重写&#xff08;Override&#xff09;&#xff1a; 重写是指在子类中重…

如何把视频转成文字稿?6个软件教你快速转换视频成文字

如何把视频转成文字稿&#xff1f;6个软件教你快速转换视频成文字 将视频转换为文字稿是一种有效的方式&#xff0c;可以帮助您提取视频中的信息并进行整理、编辑。以下是六个软件和工具&#xff0c;可以帮助您快速转换视频为文字稿&#xff1a; Google文档语音输入&#xf…

05-06 周一 Shell工程目录划分和开发最佳实践

05-06 周一 Shell工程目录划分和开发最佳实践 时间版本修改人描述2024年5月6日10:34:13V0.1宋全恒新建文档2024年5月6日11:07:12V1.0宋全恒完成 简介 之前楼主曾经完成过一个shell工程的开发&#xff0c;记得当时项目名称叫做campus-shell&#xff0c;主要是用来一键完成多个模…

高刚性滚柱直线导轨有哪些应用场景?

滚柱型滚动体取代了滚珠&#xff0c;由滚柱与导轨和滑块的线接触方式&#xff0c;滚柱导轨能在高负载的情况下仍然保持刚性值和高精度。为实现超高刚性和超重负荷能力而设计&#xff0c;整体滚柱导轨达到四方向等高刚性、高负载、高精度能力的特点&#xff0c;非常适合高速自动…

麦肯锡精英高效阅读法笔记

系列文章目录 如何有效阅读一本书笔记 读懂一本书笔记 麦肯锡精英高效阅读法笔记 文章目录 系列文章目录序章 无法读书的5个理由无法读书的理由① 忙于工作&#xff0c;没时间读书无法读书的理由② 不知应该读什么无法读书的理由③ 没读完的书不断增多无法读书的理由④ 工作繁…

[华为OD]C卷 精准核算检测 100

题目&#xff1a; 为了达到新冠疫情精准防控的需要&#xff0c;为了避免全员核酸检测Q带来的浪费&#xff0c;需要精准圈定可 能被感染的人群。现在根据传染病流调以及大数据分析&#xff0c;得到了每个人之间在时间、空间上是 否存在轨迹的交叉现在给定一组确诊人员编号&…

java面向对象实现文字格斗游戏

面向对象编程&#xff08;Object-Oriented Programming, OOP&#xff09;是一种程序设计思想&#xff0c;它利用“对象”来封装状态和行为&#xff0c;使得代码更易于维护和扩展。 下面我们使用java中的面向对象编程&#xff0c;来实现一个文字格斗的游戏联系&#xff01; 实…

多行字符串水平相加

题目来源与2023河南省ccpc statements_2.pdf (codeforces.com) ls [ ........ ........ .0000000 .0.....0 .0.....0 .0.....0 .0.....0 .0.....0 .0000000 ........ , ........ ........ .......1 .......1 .......1 .......1 .......1 .......1 .......1 ........, ......…

解决Gitlab集成Jira时报SSL证书问题

1. 问题描述 在gitlab中集成jira的时候&#xff0c;由于jira是企业内部网址&#xff0c;并使用自己签名的SSL证书&#xff0c;一直会报证书验证不过的问题&#xff0c;报错信息如下&#xff1a; Connection failed. Check your integration settings. SSL_connect returned1 …

Python专题:一、安装步骤

1、下载地址&#xff1a;Welcome to Python.org 勾选这个add 其他的全部下一步即可。 运行出现这个即代表安装成功。 Python自带编辑器。 2、推荐使用的sublime 编辑器下载 全部下一步安装。

快速了解OV证书和DV证书的区别及使用场景

OV&#xff08;Organization Validation&#xff0c;组织验证&#xff09;证书和DV&#xff08;Domain Validation&#xff0c;域名验证&#xff09;证书都是SSL/TLS证书&#xff0c;用于保护网站数据传输的安全性和提供身份验证&#xff0c;但两者在验证深度、信任级别、提供的…

知道了这个秘密,你也能在抖音上快速涨1000粉!巨量千川投流揭秘

随着抖音平台的快速发展&#xff0c;越来越多的人开始关注如何在这个平台上快速涨粉。毕竟&#xff0c;拥有大量的粉丝不仅可以提升个人影响力&#xff0c;还能为商业推广带来更多的曝光和机会。那么&#xff0c;抖音怎样快速涨粉呢&#xff1f;本文将为您揭秘其中的秘籍&#…
最新文章