Java中HashMap的用法

Java中HashMap的用法HashMap学习java基础的时候对map不熟悉,再加上图算法经常用到这个结构来存储,特此加一篇文章来介绍Mapimportjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map.Entry;publicclassHashMap{publi……

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

HashMap

学习java基础的时候对map不熟悉,再加上图算法经常用到这个结构来存储,特此加一篇文章来介绍Map

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map.Entry;

public class HashMapTest {

	public static void main(String[] args) {
		HashMap<String, String> map = new HashMap<>();
		map.put("zhang", "31");//存放键值对

		System.out.println(map.containsKey("zhang"));//键中是否包含这个数据
		System.out.println(map.containsKey("daniu"));
		System.out.println("=========================");

		System.out.println(map.get("zhang"));//通过键拿值
		System.out.println(map.get("daniu"));
		System.out.println("=========================");

		System.out.println(map.isEmpty());//判空
		System.out.println(map.size());
		System.out.println("=========================");

		System.out.println(map.remove("zhang"));//从键值中删除
		System.out.println(map.containsKey("zhang"));
		System.out.println(map.get("zhang"));//获取值
		System.out.println(map.isEmpty());
		System.out.println(map.size());
		System.out.println("=========================");

		map.put("zhang", "31");
		System.out.println(map.get("zhang"));
		map.put("zhang", "32");
		System.out.println(map.get("zhang"));
		System.out.println("=========================");

		map.put("zhang", "31");
		map.put("cheng", "32");
		map.put("yun", "33");

		for (String key : map.keySet()) {
			System.out.println(key);
		}
		System.out.println("=========================");

		for (String values : map.values()) {
			System.out.println(values);
		}
		System.out.println("=========================");

		map.clear();
		map.put("A", "1");
		map.put("B", "2");
		map.put("C", "3");
		map.put("D", "1");
		map.put("E", "2");
		map.put("F", "3");
		map.put("G", "1");
		map.put("H", "2");
		map.put("I", "3");
		for (Entry<String, String> entry : map.entrySet()) {
			String key = entry.getKey();
			String value = entry.getValue();
			System.out.println(key + "," + value);
		}
		System.out.println("=========================");

		// you can not remove item in map when you use the iterator of map
		// for(Entry<String,String> entry : map.entrySet()){
		// if(!entry.getValue().equals("1")){
		// map.remove(entry.getKey());
		// }
		// }

		// if you want to remove items, collect them first, then remove them by
		// this way.
		List<String> removeKeys = new ArrayList<String>();
		for (Entry<String, String> entry : map.entrySet()) {
			if (!entry.getValue().equals("1")) {
				removeKeys.add(entry.getKey());
			}
		}
		for (String removeKey : removeKeys) {
			map.remove(removeKey);
		}
		for (Entry<String, String> entry : map.entrySet()) {
			String key = entry.getKey();
			String value = entry.getValue();
			System.out.println(key + "," + value);
		}
		System.out.println("=========================");

	}

}


扫码关注更多技术干货

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/158889.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • linux与g++基本知识「建议收藏」

    linux与g++基本知识「建议收藏」基本知识gcc、g++、gdb区别yum、apt、rpm区别二进制包和源码包linux动态库和静态库cpp文件编译流程g++ 重要参数生成库文件生成静态库生成动态库GDB调试gcc、g++、gdb区别GCC:GNU Compiler Collection(GUN 编译器集合),它可以编译C、C++、JAV、Fortran、Pascal、Object-C、Ada等语言。gcc是GCC中的GUN C Compiler(C 编译器)g++是GCC中的GUN C++ Compiler(C++编译器)gd

  • 通过PropertyDescriptor反映射调用set和get方法

    通过PropertyDescriptor反映射调用set和get方法1packagecom.zhoushun;importjava.lang.reflect.Method;importjava.lang.reflect.Field;importjava.beans.PropertyDescriptor;publicclassPropertyUtil{ @SuppressWarnings(“unchecked”) publicsta

  • Hash一致算法_一致性hash是如何做数据迁移

    Hash一致算法_一致性hash是如何做数据迁移概述这里存在一种场景,当一个服务由多个服务器组共同提供时,key应该路由到哪一个服务.这里假如采用最通用的方式key%N(N为服务器数目),这里乍一看没什么问题,但是当服务器数目发送增加或减少时,分配方式则变为key%(N+1)或key%(N-1).这里将会有大量的key失效迁移,如果后端key对应的是有状态的存储数据,那么毫无疑问,这种做法将导致服务器间大量的数据迁移,从而照成

  • pycharm怎么快速注释_pycharm怎么全部注释

    pycharm怎么快速注释_pycharm怎么全部注释Pycharm如何快速注释一行功能快捷键注释一行“ctrl+/”取消该行注释“ctrl+/”(同上)

  • java解析xml方法_详解Java解析XML的四种方法

    java解析xml方法_详解Java解析XML的四种方法XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便。对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(DocumentObjectModel),DTD(DocumentTypeDefinition),SAX(SimpleAPIforXML),XSD(XmlSchemaDefinit…

  • 使用BurpSuite对app抓包教程

    使用BurpSuite对app抓包教程使用BurpSuite对app抓包教程1.前言这里给出burp2.0的下载链接:https://pan.baidu.com/s/1-UhPLXcLUEXDcMIWzT50fw提取码:vxym2.流程前提条件是保证安卓手机(模拟器)和笔记本都连在同一wifi下首先导出证书,选择Import/exportCAcertificate,在选择CertificateinDERf…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号