JAVA中的 map,list,set

 更新时间:2021年11月09日 08:35:45   作者:皮皮治  
这篇文章主要介绍了JAVA中的 map、list、set这三个集合,下面文章围绕JAVA中的三大集合 map、list、set详情讲解,需要的朋友可以参考一下

1、Map接口和Collection接口是所有集合框架的父接口

Collection接口的子接口包括:Set接口和List接口
Map接口的实现类主要有:HashMapTreeMapHashtableConcurrentHashMap以及Properties
Set接口的实现类主要有:HashSetTreeSetLinkedHashSet
List接口的实现类主要有:ArrayListLinkedListStack以及Vector

List,Set,Map三者的区别?List、Set、Map 是否继承自 Collection 接口?List、Map、Set 三个接口存取元素时,各有什么特点?

2、Collection集合主要有List和Set两大接口

  • (1)List:是一个有序,元素可以重复。常用的实现类有 ArrayListLinkedList 和 Vector。
  • (2)Set:是一个无序,不可以存储重复元素,只允许存入一个null元素,Set 接口常用实现类是 HashSet、LinkedHashSet 以及 TreeSet

3、Map

Map是一个键值对集合,存储键、值和之间的映射。 Key无序,唯一;value 不要求有序,允许重复。Map没有继承于Collection接口,从Map集合中检索元素时,只要给出键对象,就会返回对应的值对象。

Map 的常用实现类:HashMapTreeMapHashTableLinkedHashMapConcurrentHashMap

(1)Map 存元素和取元素和删除(put、get、remove)

import java.util.HashMap;
/**
 * Map 存元素和取元素和删除(put、get、remove)
 * @author 小治的高等数学
 *
 */
public class Map1 {
 public static void main(String[] args) {
   // 创建 HashMap 对象 Sites
        HashMap<String, String> sites = new HashMap<String, String>();
        // 添加键值对
        sites.put("1", "Google");
        sites.put("2", "Runoob");
        sites.put("3", "Taobao");
        sites.put("4", "Zhihu");
        // 输出Map中所有元素
        System.out.println(sites);
        // 拿出Map中key的为1的value的值
        System.out.println(sites.get("1"));
        System.out.println(sites.get("3"));
        sites.remove("3");
        System.out.println(sites.get("3"));
        System.out.println(sites);
 }
}


(2)循环Map

package basics.map;
 
import java.util.HashMap;
import java.util.Map.Entry;
public class Map2 {
 public static void main(String[] args) {
   // 创建 HashMap 对象 Sites
        HashMap<Integer, String> sites = new HashMap<Integer, String>();
        // 添加键值对
        sites.put(4, "Zhihu");
        sites.put(1, "Google");
        sites.put(2, "Runoob");
        sites.put(3, "Taobao");
        sites.put(4, "Zhihu2");
        // 只循环 key
        for (Integer i : sites.keySet()) {
            System.out.println("key: " + i + " value: " + sites.get(i));
        }
        // 只循环 value 值
        for(String value: sites.values()) {
          // 输出每一个 value
          System.out.println(value + ", ");
        }
        
        // 循环 key 和 value
        for (Entry<Integer, String> entry : sites.entrySet()) {
         System.out.println("只输出key "+entry.getKey());
         System.out.println("只输出value "+entry.getValue());
        }
        
        for (int i = 0; i <= sites.size(); i++) {
   System.out.println(sites.get(i));
  }
 }
}

到此这篇关于JAVA中的 map,list,set的文章就介绍到这了,更多相关JAVA map、list、set内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • IntelliJ IDEA 代码运行时中文出现乱码问题及解决方法

    IntelliJ IDEA 代码运行时中文出现乱码问题及解决方法

    在我们刚接触到IDEA时,想美滋滋的敲一个“hello world”来问候这个世界,但难免会遇到这种问题乱码,这篇文章主要介绍了解决IntelliJ IDEA 代码运行时中文出现乱码问题,需要的朋友可以参考下
    2023-09-09
  • Spring Boot 中的 SockJS原理及使用方法

    Spring Boot 中的 SockJS原理及使用方法

    SockJS 的主要作用是提供一种 WebSocket 的兼容性解决方案,使得不支持 WebSocket 的浏览器也可以使用 WebSocket,本文介绍了Spring Boot中的SockJS,包括SockJS的原理,使用方法和示例代码,感兴趣的朋友跟随小编一起看看吧
    2023-07-07
  • Java中Integer128的坑

    Java中Integer128的坑

    本文主要介绍了Java中Integer128的坑,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • Java使用File类遍历目录及文件实例代码

    Java使用File类遍历目录及文件实例代码

    本篇文章主要介绍了Java使用File类遍历目录及文件实例代码,详细的介绍了File类的使用,有兴趣的可以了解一下。
    2017-04-04
  • java中的前++和后++的区别示例代码详解

    java中的前++和后++的区别示例代码详解

    这篇文章主要介绍了java中的前++和后++的区别示例代码详解,其实大家只要记住一句话就可以了,前++是先自加再使用而后++是先使用再自加,本文通过代码给大家详细解说,感兴趣的朋友跟随小编一起看看吧
    2020-06-06
  • Javaweb项目session超时解决方案

    Javaweb项目session超时解决方案

    这篇文章主要介绍了Javaweb项目session超时解决方案,关于解决方案分类比较明确,内容详细,需要的朋友可以参考下。
    2017-09-09
  • SpringBoot配置shiro安全框架的实现

    SpringBoot配置shiro安全框架的实现

    这篇文章主要介绍了SpringBoot配置shiro安全框架的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Java日常练习题,每天进步一点点(52)

    Java日常练习题,每天进步一点点(52)

    下面小编就为大家带来一篇Java基础的几道练习题(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望可以帮到你
    2021-08-08
  • Java%(取模运算)全面讲解

    Java%(取模运算)全面讲解

    这篇文章主要介绍了Java%(取模运算)全面讲解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Java并发编程示例(七):守护线程的创建和运行

    Java并发编程示例(七):守护线程的创建和运行

    这篇文章主要介绍了Java并发编程示例(七):守护线程的创建和运行,在本节示例中,我们将创建两个线程,一个是普通线程,向队列中写入事件,另外一个是守护线程,清除队列中的事件,需要的朋友可以参考下
    2014-12-12

最新评论