List集合与Map集合的数据转换  

  实现List和Map数据的转换。

    具体要求如下:

    功能1:定义方法public void listToMap( ){ }将List中Student元素封装到Map中

        1)使用构造方法Student(int id,String name,int age,String sex )创建多个学生信息并加入List

        2) 遍历List,输出每个Student信息

        3) 将List中数据放入Map,使用Student的id属性作为key,使用Student对象信息作为value

        4) 遍历Map,输出每个Entry的key和value

    功能2:定义方法public void mapToList( ){ }将Map中Student映射信息封装到List

        1)创建实体类StudentEntry,可以存储Map中每个Entry的信息

        2) 使用构造方法Student(int id,String name,int age,String sex )创建多个学生信息,并使用Student的id属性作为key,存入Map

        3)创建List对象,每个元素类型是StudentEntry

        4)将Map中每个Entry信息放入List对象

一,创建学生对象

 public class Student_3 {
/**
* 使用构造方法Student(int id,String name,int age,String sex )
*/
private int id;
private String name;
private int age;
private String sex; public Student_3() {
} public Student_3(int id, String name, int age, String sex) {
this.id = id;
this.name = name;
this.age = age;
this.sex = sex;
} public int getId() {
return id;
} public String getName() {
return name;
} public int getAge() {
return age;
} public String getSex() {
return sex;
} public void setId(int id) {
this.id = id;
} public void setName(String name) {
this.name = name;
} public void setAge(int age) {
this.age = age;
} public void setSex(String sex) {
this.sex = sex;
} @Override
public String toString() {
return "["+id +" "+ name +" "+ age +" "+ sex+"]";
} }

  二,创建测试类

 import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set; public class Test_3 {
//List集合转Map集合
public void listToMap(Student_3 s1,Student_3 s2 ){
//1.创建List集合
List<Student_3> list = new ArrayList<>();
//2.创建Map集合
Map<Integer, Student_3> map = new HashMap<>();
//3.传入学生对象
list.add(s1);
list.add(s2);
Iterator<Student_3> it = list.iterator();
//4.遍历List集合
while(it.hasNext()){
Student_3 stu = it.next();
//5.将学生id作为Map集合的Key,学生对象作为Map集合的Vaul
map.put(stu.getId(), stu);
}
//6.遍历Map集合
Set<Entry<Integer, Student_3>> entrySet = map.entrySet();
for (Entry<Integer, Student_3> en : entrySet) {
System.out.println(en);
} } //Map集合转List集合
public void mapToList(Student_3 s3,Student_3 s4){
//1.创建Map集合
Map< Integer, Student_3> map = new HashMap<>();
//2.创建List集合
List<Student_3> list = new ArrayList<>();
//3.将学生id作为Map集合的Key,学生对象作为Map集合的Vaul
map.put(s3.getId(),s3);
map.put(s4.getId(),s4);
//4.遍历Map集合
Set<Entry<Integer, Student_3>> entrySet = map.entrySet();
for (Entry<Integer, Student_3> e : entrySet) {
//5.将Map集合的值加入到Liat集合中
list.add(e.getValue());
}
//6.遍历List集合
Iterator<Student_3> it = list.iterator();
while(it.hasNext()){
System.out.println(it.next());
} }
public static void main(String[] args) {
//创建四个学生对象
Student_3 s1 = new Student_3(101, "张三", 25, "男");
Student_3 s2 = new Student_3(102, "马琴", 25, "女");
Student_3 s3 = new Student_3(103, "赵薇", 36, "女");
Student_3 s4 = new Student_3(104, "李小梅", 31, "女");
//创建Test_3的实例
Test_3 t = new Test_3();
System.out.println("List集合转Map集合");
//调用List集合转Map集合方法并传入学生对象s1,s2
t.listToMap(s1,s2);
System.out.println("\n");
System.out.println("Map集合转List集合");
//调用Map集合转List集合方法并传入学生对象s3,s4
t.mapToList(s3, s4);
}
}

java集合(List集合与Map集合的数据转换)的更多相关文章

  1. Java提高(5)---map集合排序

    map集合排序 这篇文章讲的不仅仅是map排序,比如把对象按某一属性排序,它都可以解决这些问题. 比如,有N个对象,每个对象有个属性就是成绩,成绩分:优秀,良好,合格.那我们如何按照成绩的好坏进行排序 ...

  2. Java学习笔记24(Map集合)

    Map接口: Map接口与Collection接口无继承关系. 区别:Collection中的元素是孤立的,一个一个存进去的. Map作为一个映射集合,每一个元素包含Key-value对(键-值对). ...

  3. 牛客网Java刷题知识点之Java 集合框架的构成、集合框架中的迭代器Iterator、集合框架中的集合接口Collection(List和Set)、集合框架中的Map集合

    不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素. ...

  4. 【Java】遍历List/Set/Map集合的一些常用方法

    /* * 遍历List/Set/Map集合的一些常用方法 */import java.util.ArrayList;import java.util.HashMap;import java.util. ...

  5. Java基础(二十三)集合(6)Map集合

    Map接口作为Java集合框架中的第二类接口,其子接口为SortedMap接口,SortedMap接口的子接口为NavigableMap接口. 实现了Map接口具体类有:HashMap(子类Linke ...

  6. Java集合类学习笔记(Map集合)

    Map用于保存具有映射关系的数据,因此Map集合里保存着两组数据,一组用于保存Map的key,一组用于保存key所对应的value. Map的key不允许重复. HashMap和Hashtable都是 ...

  7. 第1节 Scala基础语法:13、list集合的定义和操作;16、set集合;17、map集合

    list.+:5 , list.::5: 在list集合头部添加单个元素5 : li1.:+(5):在list集合尾部添加单个元素5: li1++li2,li1:::li2:在li1集合尾部添加il2 ...

  8. 集合框架—常用的map集合

    1.Collections.synchronizedMap() 实现上在调用map所有方法时,都对整个map进行同步,而ConcurrentHashMap的实现却更加精细,它对map中的所有桶加了锁. ...

  9. Java集合的实现细节—Set集合和Map集合

    Set:代表无序.不可重复的集合 Map:代表key-value对集合,也称为关联数组 从表面上看,Set和Map相似性很少,但实际上可以说Map集合时Set集合的扩展. 1.Set集合和Map集合的 ...

  10. java中Map集合的常用方法 (转)

    原文地址:https://www.cnblogs.com/xiaostudy/p/9510763.html Map集合和Collection集合的区别 Map集合是有Key和Value的,Collec ...

随机推荐

  1. 八,mysql优化——读写分离

    读写分离目的是给大型网站缓解查询压力.

  2. nginx 开启GZIP、域名指向index.html

    nginx 虽然默认开启了gzip压缩,但是有关压缩文件.压缩效率没有开启,在建设我的(个人博客)[www.fayinme.cn]中,直观的感受到gzip带来的访问速度提升的快感. 如何开启GZIP ...

  3. [Swift实际操作]七、常见概念-(9)使用定时组件Timer执行定时任务

    本文将为你演示计时器的使用,使用计时器可以每隔一定时间执行某个函数. 在左侧的项目导航区,打开视图控制器的代码文件:ViewController.swift现在开始编写代码,实现任务定时的功能.定义一 ...

  4. Python小白学习之路(二十二)—【生成器】

    一.什么是生成器? 生成器可以理解成是一种数据类型,特殊地是生成器可以自动实现迭代器协议其他的数据类型需要调用自己内置的__iter__方法所以换种说法,生成器就是可迭代对象 !回忆:很重要的迭代器协 ...

  5. 干货 | 自适应大邻域搜索(Adaptive Large Neighborhood Search)入门到精通超详细解析-概念篇

    01 首先来区分几个概念 关于neighborhood serach,这里有好多种衍生和变种出来的胡里花俏的算法.大家在上网搜索的过程中可能看到什么Large Neighborhood Serach, ...

  6. 添加或删除 HTML dom元素

    添加或删除 HTML dom元素 创建新的 HTML 元素 如需向 HTML DOM 添加新元素,您必须首先创建该元素(元素节点),然后向一个已存在的元素追加该元素. <div id=" ...

  7. h5在线1v1客服|web在线客服系统|h5即时聊天

    网上有很多环信.美恰之类的客服系统,最近也使用h5+css3+fontJs+swiper+wcPop等技术架构开发了一个在线客服(1v1沟通聊天),可以应用到在线临时聊天.在线咨询等情景.实现了消息. ...

  8. HBase定期备份

    转载一份使用Export与Import定期备份的Python代码.每月15日做一次完整备份,每天进行一次增量备份. import time import datetime from datetime ...

  9. (转)Jupyter notebook入门教程(上,下)

    https://blog.csdn.net/red_stone1/article/details/72858962------上 https://blog.csdn.net/red_stone1/ar ...

  10. python的字符串连接操作符+

    如图, 运行后提示错误,这是“+” 是字符串连接操作符,字符串连接只能在被连接的每一个都是字符串时起作用.而以上程序试图将一个字符串同一个非字符串连接会引发一个异常,所以会报错. 正确的为: 或者是: