当前位置: 首页 > news >正文

提升访问境外网站速度南充二手房最新出售信息

提升访问境外网站速度,南充二手房最新出售信息,常德网站开发服务,做手机app用什么软件集合框架_HashMap 一、概述 HashMap 是用于存储 Key-Value 键值对的集合。 (1)HashMap 根据键的 hashCode 值存储数据,大多数情况下可以直接定位到它的值,所以具有很快的访问速度,但遍历顺序不确定。 (2&…

集合框架_HashMap

一、概述

HashMap 是用于存储 Key-Value 键值对的集合。
(1)HashMap 根据键的 hashCode 值存储数据,大多数情况下可以直接定位到它的值,所以具有很快的访问速度,但遍历顺序不确定。
(2) HashMap 中键 key 为 null 的记录至多只允许一条,值 value 为 null 的记录可以有多条。
(3) HashMap 非线程安全,即任一时刻允许多个线程同时写 HashMap,可能会导致数据的不一致。

二、特点

HashMap的特点主要有以下几点:

  1. 线程不安全:HashMap不是线程安全的容器,不适用于多线程环境。如果需要在多线程环境下使用Map,可以考虑使用ConcurrentHashMap或者通过加锁等方式来保证线程安全。
  2. 哈希表实现:HashMap使用哈希表(Hash Table)实现,它通过散列函数将键映射到哈希表的索引位置上,从而实现了快速的插入、删除和查找操作。
  3. 元素无序:HashMap并不保证元素的顺序,元素在哈希表中的位置取决于键的哈希值和哈希表的容量。
  4. 键不重复:HashMap中的键是不允许重复的,如果添加一个键值对时发现键已经存在,则会覆盖原有的值。
  5. 可以存放null:HashMap中的键和值都可以存放null,但是需要注意并发情况下的线程安全性。
  6. 性能高效:由于使用了哈希表实现,HashMap的插入、删除和查找操作的时间复杂度都接近常数级别,因此具有高效的性能。

总之,HashMap是一种常用的数据结构,其主要特点是高效、无序、键不重复,但不具备线程安全性。在使用时需要根据具体应用场景进行选择和设计。

三 使用示例

HashMap 类位于 java.util 包中,使用前需要引入它,语法格式如下:

import java.util.HashMap; // 引入 HashMap 类

以下实例我们创建一个 HashMap 对象 Sites, 整型(Integer)的 key 和字符串(String)类型的 value:

HashMap<Integer, String> Sites = new HashMap<Integer, String>();

HashMap常用方法:
1、put(K key, V value): 将键(key)/值(value)映射存放到Map集合中。

2、get(Object key): 返回指定键所映射的值,没有该key对应的值则返回 null。

3、size(): 返回Map集合中数据数量。

4、clear(): 清空Map集合。

5、isEmpty(): 判断Map集合中是否有数据,如果没有则返回true,否则返回false。

6、remove(Object key): 删除Map集合中键为key的数据并返回其所对应value值。

7、values(): 返回Map集合中所有value组成的以Collection数据类型格式数据。

8、containsKey(Object key): 判断集合中是否包含指定键,包含返回 true,否则返回false。

9、containsValue(Object value): 判断集合中是否包含指定值,包含返回 true,否则返回false。

10、keySet(): 返回Map集合中所有key组成的Set集合。

11、entrySet(): 将Map集合每个key-value转换为一个Entry对象并返回由所有的Entry对象组成的Set集合。

1 添加元素

1.1 HashMap 类提供了很多有用的方法,添加键值对(key-value)可以使用 put() 方法:

实例

// 引入 HashMap 类      
import java.util.HashMap;public class worldTest {public static void main(String[] args) {// 创建 HashMap 对象 SitesHashMap<Integer, String> Sites = new HashMap<Integer, String>();// 添加键值对Sites.put(1, "hello");Sites.put(2, "world");Sites.put(3, "hi");Sites.put(4, "china");System.out.println(Sites);}
}

1.2 以下实例创建一个字符串(String)类型的 key 和字符串(String)类型的 value:

实例

// 引入 HashMap 类      
import java.util.HashMap;public class worldTest {public static void main(String[] args) {// 创建 HashMap 对象 SitesHashMap<String, String> Sites = new HashMap<String, String>();// 添加键值对Sites.put("one", "hello");Sites.put("two", "world");Sites.put("three", "hi");Sites.put("four", "china");System.out.println(Sites);}
}

2 访问元素

我们可以使用 get(key) 方法来获取 key 对应的 value:

实例

// 引入 HashMap 类      
import java.util.HashMap;public class worldTest {public static void main(String[] args) {// 创建 HashMap 对象 SitesHashMap<Integer, String> Sites = new HashMap<Integer, String>();// 添加键值对Sites.put(1, "hello");Sites.put(2, "world");Sites.put(3, "hi");Sites.put(4, "china");System.out.println(Sites.get(3));}
}

3 删除元素

3.1 我们可以使用 remove(key) 方法来删除 key 对应的键值对(key-value):

实例

// 引入 HashMap 类      
import java.util.HashMap;public class worldTest {public static void main(String[] args) {// 创建 HashMap 对象 SitesHashMap<Integer, String> Sites = new HashMap<Integer, String>();// 添加键值对Sites.put(1, "hello");Sites.put(2, "world");Sites.put(3, "hi");Sites.put(4, "china");Sites.remove(4);System.out.println(Sites);}
}

3.2 删除所有键值对(key-value)可以使用 clear 方法:

实例

// 引入 HashMap 类      
import java.util.HashMap;public class worldTest {public static void main(String[] args) {// 创建 HashMap 对象 SitesHashMap<Integer, String> Sites = new HashMap<Integer, String>();// 添加键值对Sites.put(1, "hello");Sites.put(2, "world");Sites.put(3, "hi");Sites.put(4, "china");Sites.clear();System.out.println(Sites);}
}

4 计算大小

如果要计算 HashMap 中的元素数量可以使用 size() 方法:

实例

// 引入 HashMap 类      
import java.util.HashMap;public class worldTest {public static void main(String[] args) {// 创建 HashMap 对象 SitesHashMap<Integer, String> Sites = new HashMap<Integer, String>();// 添加键值对Sites.put(1, "hello");Sites.put(2, "world");Sites.put(3, "hi");Sites.put(4, "china");System.out.println(Sites.size());}
}

5 迭代 HashMap

可以使用 for-each 来迭代 HashMap 中的元素。

如果你只想获取 key,可以使用 keySet() 方法,然后可以通过 get(key) 获取对应的 value,如果你只想获取 value,可以使用 values() 方法。

实例

// 引入 HashMap 类      
import java.util.HashMap;public class worldTest {public static void main(String[] args) {// 创建 HashMap 对象 SitesHashMap<Integer, String> Sites = new HashMap<Integer, String>();// 添加键值对Sites.put(1, "hello");Sites.put(2, "world");Sites.put(3, "hi");Sites.put(4, "china");// 输出 key 和 valuefor (Integer i : Sites.keySet()) {System.out.println("key: " + i + " value: " + Sites.get(i));}// 返回所有 value 值for(String value: Sites.values()) {// 输出每一个valueSystem.out.print(value + ", ");}}
}

6 复制一份 hashMap

方法:clone()

实例

public static void main(String[] args) {HashMap<String, String> map = new HashMap<>();map.put("A","1");map.put("B","2");map.put("C","3");Object clone = map.clone();System.out.println("原来的"+map);System.out.println("复制一份"+clone);
}

7 判断 hashMap 是否为空

方法:isEmpty()

实例

public static void main(String[] args) {HashMap<String, String> map = new HashMap<>();HashMap<String, String> map1 = new HashMap<>();map.put("A","1");map.put("B","2");map.put("C","3");boolean empty1 = map.isEmpty();boolean empty2 = map1.isEmpty();System.out.println(empty1);System.out.println(empty2);
}

8 替换 hashMap 中是指定的 key 对应的 value

方法:replace()

实例

public static void main(String[] args) {HashMap<String, String> map = new HashMap<>();HashMap<String, String> map1 = new HashMap<>();map.put("A","1");map.put("B","2");map.put("C","3");System.out.println("替换前----"+map);map.replace("A", "100");System.out.println("替换后----"+map);
}
http://www.sczhlp.com/news/77522/

相关文章:

  • C语言中常见的数据结构及其代码实现 - 教程
  • 淘宝客网站模板网站怎么增加页面收录
  • 站长seo百度seo多少钱一个月
  • 用php写的网站有哪些东莞网站建设品牌
  • 如何在百度举报网站广西智能网站建设制作
  • 推荐专业的网站建设公司wordpress加载不出图
  • 做网站 传视频 用什么笔记本好长春网站建设哪家专业
  • 宜兴做阿里巴巴网站重庆市建筑工程信息网官网
  • 孝感做网站公司如何生成自己的网站
  • 网站登录入口打开网页wordpress错误
  • 我的第一个coze 智能体(agent)应用
  • 网上搜索东西的神搜索技巧[ZZ]
  • 西安网站制作推广重庆建筑信息网查询
  • 郑州上市企业网站建设做推手需要开网站吗
  • 勒流网站建设新开河街网站建设公司
  • 《jsp网站开发详解》百度云wordpress选不了中文
  • 深入解析:前端vue3入门学习
  • modbusTCP通讯过程
  • 欧度软件销售订单多种产品添加途径
  • 网站页面关键词优化旅游门户网站建设
  • 昆山网站建设哪家好网站建设运营的灵魂是什么
  • 深圳网站推广哪家好那个网站是专门做机械设备
  • 做平团的网站php网站 数据库链接
  • 杭州建设网考试信息网南宁seo团队费用是多少
  • 定边网站建设网站如何做点击链接
  • wp网站开发网络营销成功案例有哪些
  • 网站建设 app 优化刘强东称软弱的人无法成就伟大公司
  • 官方网站如何建立杭州软件制作
  • 平台制作网站公司厦门关键词优化seo
  • Centos 7、Debian及Ubuntu系统中安装和验证tree命令