首页 > 编程语言 >java List集合转Map并遍历输出

java List集合转Map并遍历输出

时间:2024-07-15 17:19:40浏览次数:10  
标签:Map NodeList map List System key println java out

1.使用流转map并且遍历

package com.demo.toMap;


import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

public class MianDemo {
    public static void main(String[] args) {
        List<NodeList> list =  initList();
        //List通过流转Map<String,Integer>
        Map<String,Integer> map = list.stream().collect(Collectors.toMap(NodeList::getName, NodeList->NodeList.getAge()==null?1:NodeList.getAge()));

        //List通过流转Map<String,NodeList>
        Map<String,NodeList> mapObj = list.stream().collect(Collectors.toMap(NodeList::getName, NodeList->NodeList));

        System.out.println("=============================================");
        //map遍历方式1
        map.forEach((key,val)->{
            System.out.println("方式1 key: "+key+" , "+"val:"+val);
        });
        System.out.println("=============================================");
        //map遍历方式2
        for (Map.Entry<String, Integer> entry : map.entrySet()) {
            String key = entry.getKey();
            Integer value = entry.getValue();
            System.out.println("方式2 key: "+key+" , "+"val:"+value);
        }
        System.out.println("=============================================");
        //map遍历方式3,通过遍历 key 获取 val
        for (String key : map.keySet()) {
            // 根据键获取值
            Integer value = map.get(key);
            System.out.println("方式3 key: "+key+" , "+"val:"+value);
        }
        System.out.println("=============================================");
        //map遍历方式4,遍历values
        for (Integer val : map.values()) {
            System.out.println("方式4 val:"+val);
        }
        System.out.println("=============================================");
        //map遍历方式5,
        map.entrySet().forEach(entry->{
            System.out.println("方式5 key: "+entry.getKey()+" , "+"val:"+entry.getValue());
        });
        System.out.println("=============================================");
        //map遍历方式5,
        map.keySet().forEach(key->{
            Integer age =  map.get(key);
            System.out.println("方式5 key: "+key+" , "+"val:"+age);
        });

    }

    private static List<NodeList> initList(){
        List<NodeList> list = new ArrayList<>();
        NodeList node1 = new NodeList();
        node1.setName("a");
        node1.setAge(23);
        NodeList node2 = new NodeList();
        node2.setName("b");
        node2.setAge(23);
        NodeList node3 = new NodeList();
        node3.setName("c");
        node3.setAge(23);
        list.add(node1);
        list.add(node2);
        list.add(node3);
        return list;
    }
}

2.集合对象

package com.demo.toMap;

public class NodeList {

    private String name;

    private Integer age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }
}

 

标签:Map,NodeList,map,List,System,key,println,java,out
From: https://www.cnblogs.com/ningbeibei/p/18303544

相关文章

  • map集合
    packagecom.coding;importjava.util.*;publicclassTest{publicstaticvoidmain(String[]args){//Map<String,String>map=newHashMap<>();//map.put("bbb","bb");//map.put("aaa&quo......
  • 【数据集】Maple-IDS——网络安全恶意流量检测数据集
    一、数据集介绍Maple-IDS数据集是一个网络入侵检测评估数据集,旨在增强异常基础入侵检测系统(IDS)和入侵预防系统(IPS)的性能和可靠性。随着网络空间安全领域攻击的日益复杂化,拥有一个可靠和最新的数据集对于测试和验证IDS和IPS解决方案至关重要。数据集由东北林业大学网络安全实验室......
  • javaweb高校宿舍管理系统|寝室管理[包运行成功+永久免费答疑辅导
    项目功能简介:本项目含代码详细讲解视频,手把手带同学们敲代码从0到1完成项目详细教程学习地址:https://www.bilibili.com/video/BV1V7411M7Et《基于javaweb实现的高校宿舍管理系统》该项目含有源码、文档、答辩ppt、开题报告、代码详细讲解教程等资料、配套开发软件、软件安......
  • Java中55种锁,高级面试题,最新面试题
    Java中乐观锁在实际应用中如何解决并发问题?乐观锁通过假设并发冲突发生概率较低来解决并发问题,主要通过数据版本控制实现。在更新数据前,会检查数据版本是否发生变化,只有在数据版本未变时才允许更新,这样可以避免覆盖其他线程所做的更改。1、数据版本控制:通常给数据增......
  • Java 网络协议面试题答案整理,最新面试题
    TCP和UDP的主要区别是什么?TCP(传输控制协议)和UDP(用户数据报协议)的主要区别在于TCP是面向连接的协议,而UDP是无连接的协议。这导致了它们在数据传输方式、可靠性、速度和使用场景方面的不同。1、连接方式:TCP是面向连接的协议,数据传输前需要三次握手建立连接。UDP是无连接......
  • 如何免费用java c#实现手机在网状态查询
        今天分享手机在网状态查询接口,该接口适用的场景非常广泛!首先我们先讲下什么是手机在网状态?简单来说,就是你得手机号是否还在正常使用中,是否能够及时接收和回复信息,是否能够随时接听和拨打电话。如果你得手机号处于停机、欠费或者注销的状态,那么你的手机号就处于非在......
  • Java中的泛型是什么?有什么好处?
    在Java中,泛型(Generics)是Java5引入的一项语言特性,允许在定义类、接口和方法时使用类型参数。这些类型参数在实际使用时可以被具体的类型替换,从而提高代码的可重用性和类型安全性。泛型的定义泛型通过类型参数实现,这些类型参数通常用尖括号包围,例如<T>。以下是泛型在类、......
  • Java:什么是异常?一篇让你明白异常
    目录1.什么是异常?2.为什么需要异常处理3.异常处理的类型  3.1try-catch方式  3.2处理多种异常  3.3异常捕获的原理 3.4 异常处理的方式throws4.Exception下常用的api方法5.finally关键字6.throw关键字7.自定义异常1.什么是异常?异常就是程序在运行......
  • JavaSE项目--图书管理系统代码
    结构代码展示Book类代码packagecom.xszx.beans;//实体类publicclassBook{privateintid;privateStringname;privateintbsum;publicBook(){}publicBook(intid,Stringname,intbsum){this.id=id;......
  • 手写TodoList
    手写TodoList<scriptsetup>import{ref}from'vue'//给每个todo对象一个唯一的idletid=0constnewTodo=ref('')consttodos=ref([{id:id++,text:'LearnHTML'},{id:id++,text:'LearnJavaScript'},......