广告
返回顶部
首页 > 资讯 > 精选 >Java中Map集合的双列集合怎么用
  • 353
分享到

Java中Map集合的双列集合怎么用

2023-06-25 14:06:48 353人浏览 薄情痞子
摘要

这篇文章给大家分享的是有关Java中Map集合的双列集合怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Map集合Map概述Map是一种依照键(key)存储元素的容器,键(key)很像下标,在List中下标是

这篇文章给大家分享的是有关Java中Map集合的双列集合怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

    Map集合

    Map概述

    Map是一种依照键(key)存储元素的容器,键(key)很像下标,在List中下标是整数。在Map中键(key)可以使任意类型的对象。Map中不能有重复的键(Key),每个键(key)都有一个对应的值(value)。一个键(key)和它对应的值构成map集合中的一个元素。

    Java中Map集合的双列集合怎么用

    Map特点

    • 键值对应关系

    • 一个键对应一个值

    • 键不能重复,值可以重复

    • 元素存取无序

    Map集合的功能

    • 基本功能

    Java中Map集合的双列集合怎么用

    public class MapDemo_01 {    public static void main(String[] args) {        //创建集合对象        Map<String,String> map = new HashMap<>();         //V put(K key,V value):添加元素        map.put("灰太狼","红太狼");        map.put("喜羊羊","美羊羊");        map.put("扁嘴伦","暖羊羊");         //V remove(Object key):根据键删除键值对元素//        System.out.println(map.remove("喜羊羊"));        //没有对应的键,则返回null//        System.out.println(map.remove("沸羊羊"));         //void clear():移除所有的键值对元素//        map.clear();         //boolean containsKey(Object key):判断集合是否包含指定的键//        System.out.println(map.containsKey("喜羊羊"));        //包含返回true,反之false//        System.out.println(map.containsKey("沸羊羊"));         //boolean isEmpty():判断集合是否为空//        System.out.println(map.isEmpty());         //int size():集合的长度,也就是集合中键值对的个数        System.out.println(map.size());         System.out.println(map);    }}
    • 获取功能

    Java中Map集合的双列集合怎么用

    public class MapDemo_02 {    public static void main(String[] args) {        //创建集合对象        Map<String, String> map = new HashMap<>();         //添加元素        map.put("灰太狼", "红太狼");        map.put("喜羊羊", "美羊羊");        map.put("扁嘴伦", "暖羊羊");         //V get(Object key):根据键获取值//        System.out.println(map.get("灰太狼"));         //Set<K> keySet():获取所有键的集合//        Set<String> keySet = map.keySet();//        for(String key : keySet) {//            System.out.println(key);//        }         //Collection<V> values():获取所有值的集合        Collection<String> values = map.values();        for(String value : values) {            System.out.println(value);        }    }}

    Map集合的遍历

    方式一:

    • 1)获取所有键的集合。用keySet()方法实现

    • 2)遍历键的集合,获取到每一个键。用增强for实现

    • 3)根据键去找值。用get(Object key)方法实现

    public class MapDemo_03 {    public static void main(String[] args) {        //创建集合对象        Map<String, String> map = new HashMap<String, String>();         //添加元素        map.put("灰太狼", "红太狼");        map.put("喜羊羊", "美羊羊");        map.put("扁嘴伦", "暖羊羊");         //获取所有键的集合。用keySet()方法实现        Set<String> keySet = map.keySet();        //遍历键的集合,获取到每一个键。用增强for实现        for (String key : keySet) {            //根据键去找值。用get(Object key)方法实现            String value = map.get(key);            System.out.println(key + "," + value);        }    }}

    方式二:

    • 1)获取所有键值对对象的集合:Set<Map.Entry<K,V>> entrySet():获取所有键值对对象的集合

    • 2)遍历键值对对象的集合,得到每一个键值对对象:用增强for实现,得到每一个Map.Entry

    • 3)根据键值对对象获取键和值:用geTKEy()得到键,用getValue()得到值

    public class MapDemo02 {    public static void main(String[] args) {        //创建集合对象        Map<String, String> map = new HashMap<String, String>();         //添加元素        map.put("灰太狼", "红太狼");        map.put("喜羊羊", "美羊羊");        map.put("扁嘴伦", "暖羊羊");         //获取所有键值对对象的集合        Set<Map.Entry<String, String>> entrySet = map.entrySet();        //遍历键值对对象的集合,得到每一个键值对对象        for (Map.Entry<String, String> me : entrySet) {            //根据键值对对象获取键和值            String key = me.getKey();            String value = me.getValue();            System.out.println(key + "," + value);        }    }}

    Map集合的各个子类

    • 1)Hashtable:

    底层是哈希表数据结构线程是同步的,不可以存入null键,null值。
    效率较低,被HashMap 替代。

    • 2)HashMap:(数据无序、唯一)

    底层是哈希表数据结构,线程是不同步的,可以存入null键,null值。
    要保证键的唯一性,需要覆盖hashCode方法,和equals方法。

    • 3)LinkedHashMap:(数据有序、唯一)

    该子类基于哈希表又融入了链表。可以Map集合进行增删提高效率。

    • 4)TreeMap:(数据有序、唯一)

    底层是二叉树数据结构。可以对map集合中的键进行排序。需要使用Comparable或者Comparator 进行比较排序。return 0,来判断键的唯一性。

    集合框架

    今天验收关卡的时候,老师针对集合这部分内容,给出了一些补充知识与相关问题,我简短总结了一下。

    Java中Map集合的双列集合怎么用

    【1】ArrayList、LinkedList、Vector三者区别:

    Vector:数组,线程安全

    ArrayList:List子类,数据存取有序,可重复;底层是数组结构实现,有索引,查询快、增删慢;线程不安全

    LinkedList:List子类,数据存取有序,可重复;底层是链表结构实现,指针,查询慢、增删快;线程不安全

    【2】HashMap与HashTable区别:

    1)底层数据结构不同:HashTable只有数组+链表(jdk1就提出);HashMap在JDK1.8之前 数组+链表,在1.8之后 数组+链表/红黑树

    2)初始化容量不同:HashMap 的初始容量为:16,Hashtable 初始容量为:11,两者的负载因子默认都是:0.75

    3)扩容机制不同:当已用容量>总容量 * 负载因子时,HashMap 扩容规则为当前容量翻倍,Hashtable 扩容规则为当前容量翻倍 +1

    4)Hashtable是不允许键或值为 null 的,HashMap 的键值则都可以为 null

    【3】HashSet与TreeSet区别:

    HashSet:

    1)不能保证元素的排列顺序,顺序有可能发生变化

    2)集合元素可以是null,但只能放入一个null

    3)HashSet底层是采用HashMap实现的

    4)HashSet底层是哈希表实现的

    TreeSet:

    1)Treeset中的数据是排好序的,不允许放入null值

    2)TreeSet是通过TreeMap实现的,只不过Set用的只是Map的key

    3)TreeSet的底层实现是采用二叉树(红-黑树)的数据结构

    【4】Collection和Collections的区别:

    Collection:

    一个集合接口,它提供了对集合对象进行基本操作的通用接口方法。实现接口的类主要有List和Set,该接口的设计目标是为了各种具体的集合提供最大化的统一的操作方式

    Collections:

    针对集合类的一个包裹类,它提供了一系列静态方法实现对各种集合的搜索、排序以及线程安全化等操作,其中的大多数方法都是用于处理线性表。Collections类不能实例化,如同一个工具类,服务于Collection框架。如果在使用Collections类的方法时,对应的Collection对象null,则这些方法都会抛出NullPointerException

    感谢各位的阅读!关于“Java中Map集合的双列集合怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

    --结束END--

    本文标题: Java中Map集合的双列集合怎么用

    本文链接: https://www.lsjlt.com/news/305364.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • Java中Map集合的双列集合怎么用
      这篇文章给大家分享的是有关Java中Map集合的双列集合怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Map集合Map概述Map是一种依照键(key)存储元素的容器,键(key)很像下标,在List中下标是...
      99+
      2023-06-25
    • Java 深入浅出掌握Map集合之双列集合
      目录前言Map集合Map概述Map特点Map集合的功能Map集合的遍历Map集合的各个子类集合框架图总结前言 友友们,大家好哇!这一期我为大家带来双列集合(Map)的相关知识点讲解,...
      99+
      2022-11-12
    • java中map集合怎么使用
      在Java中,Map是一种键值对的集合,它提供了一种将键映射到值的方式。Map接口是Java集合框架中的一部分,它有多个实现类,例如...
      99+
      2023-10-08
      java
    • Java中怎么获取Map集合
      这篇文章主要介绍了Java中怎么获取Map集合的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java中怎么获取Map集合文章都会有所收获,下面我们一起来看看吧。一、概述Interface Map k:键的类型;...
      99+
      2023-06-29
    • Java中什么是Map集合
      小编给大家分享一下Java中什么是Map集合,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、什么是Map不同于List单列的线性结构,Java中的Map提供的是...
      99+
      2023-06-02
    • Java Map集合用法详解
      目录Map集合的概述常用方法:遍历方式:Map的实现类:HashMapTreeMap集合嵌套(补充知识):高频面试题1、Map2、HashMap的底层实现Map集合的概述 概述:in...
      99+
      2022-11-12
    • Java集合类之Map集合的特点及使用详解
      目录1、Map集合概述和使用1.1 Map集合概述1.2 Map集合常用方法1.3 Map集合的遍历1、Map集合概述和使用 1.1 Map集合概述 java.util接口 Map&...
      99+
      2022-11-13
    • javascript ES6中set集合、map集合如何使用
      本文小编为大家详细介绍“javascript ES6中set集合、map集合如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“javascript ES6中set集合、map集合如何使用”文章能帮助大家解决疑惑,下...
      99+
      2023-07-04
    • Java中Map集合的常用方法是怎么样的
      Java中Map集合的常用方法是怎么样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Map集合和Collection集合的区别Map集合是有Key和Value的,Collec...
      99+
      2023-06-25
    • Java Map集合的示例分析
      这篇文章将为大家详细讲解有关Java Map集合的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、前言map集合是我们常使用的集合,了解和使用map集合是必要的二、Map介绍基本形式:...
      99+
      2023-06-25
    • ES6中怎么使用Map与Set集合
      这期内容当中小编将会给大家带来有关ES6中怎么使用Map与Set集合,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。集合的概念以及和数组的区别其实数组也是集合, 只不过数组...
      99+
      2022-10-19
    • Java中Map集合的常用方法详解
      目录1、V put(K key, V value)2、void putAll(Map<? extends K,? ext...
      99+
      2022-11-12
    • java中 Map集合的特性有哪些
      java中 Map集合的特性有哪些?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Java是什么Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序、分布式系统和...
      99+
      2023-06-14
    • Java Map集合使用实例分析
      这篇文章主要讲解了“Java Map集合使用实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java Map集合使用实例分析”吧!Map接口   ...
      99+
      2023-06-30
    • Java中Map集合的三种遍历方式
      文章目录 Map集合的遍历方式Map集合的遍历方式一: 键找值Map集合的遍历方式二: 键值对Map集合的遍历方式三: Lambda Map集合的遍历方式 Map集合的遍历方式有3种: 方式一:键找值的方式遍历:先...
      99+
      2023-08-16
      java 开发语言
    • Java中Map集合初始化并赋值
      Java中Map集合初始化并赋值的几种方式: package com.itstone.mok.hutool;import com.google.common.collect.ImmutableMap;import org.junit.Tes...
      99+
      2023-08-17
      java junit 开发语言
    • java中的集合
      1.集合概述 Java的集合框架是由很多接口、抽象类、具体类组成的,都位于java.util包中。 2.Collection接口 Collection 接口-定义了存取一组对象的方法,其子接口Set和List分别定义了存储方式。Set 中...
      99+
      2023-09-04
      java jvm 开发语言
    • 进阶JAVA篇- Map 系列集合的遍历方法与常用API
      目录         1.0 Map 集合的说明         1.1 Map 集合的常用方法         1.2 Map 系列集合的特点         2.0 Map 系列集合的遍历方法(三种方法)          2.1 使用...
      99+
      2023-10-25
      java 开发语言
    • Java中的set集合怎么应用
      这篇文章主要讲解了“Java中的set集合怎么应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中的set集合怎么应用”吧!Set系类集合特点:无序:存取顺序不一致不重复:可以去除重...
      99+
      2023-07-02
    • python怎么向集合中添加集合
      在 Python 中,集合是一种无序且不重复的数据类型。要向集合中添加集合,可以使用 `update()` 方法。下面是一个示例:`...
      99+
      2023-09-27
      python
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作