集合之间的嵌套以及遍历

一、ArrayList嵌套HashMap

eg:

题目:需求为:创建一个ArrayList集合,存储三个元素,每个元素都是HashMap,每一个HashMap的键和值都是String,并进行遍历。

思路:

(1)创建ArrayList集合

(2)创建一个HashMap集合并添加对应的键和值

(3)将每个键对应的值添加进入ArrayList集合中去

(4)对ArrayList集合进行遍历;

package polish;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Set;

public class Qiantao {

	public static void main(String[] args) {
    //1、创建一个ArrayList集合,将HashMap中的元素添加进ArrayList
		ArrayList<HashMap<String, String>> list=new ArrayList<HashMap<String, String>>();
	//2.创建HashMap集合,指定键和值都为String类型
		HashMap<String, String> hm1=new HashMap<String,String>();
		HashMap<String, String> hm2=new HashMap<String,String>();
		HashMap<String, String> hm3=new HashMap<String,String>();
	//向Map集合中添加元素
		hm1.put("张若昀", "唐艺昕");
		hm2.put("杜海涛", "沈梦辰");
		hm3.put("张杰", "谢娜");
	//将HashMap集合中的元素添加到ArrayList中
          list.add(hm1);
          list.add(hm2);
          list.add(hm3);
       //遍历ArrayList集合
        for(HashMap<String, String> hm:list) {
        	//将HashMap中的键值打包成一个集合
        	Set<String> key=hm.keySet();
        	//进行value的遍历
        	for(String key1:key) {
        		String value=hm.get(key1);
        		System.out.println(key+"  "+value);
        		
        	}
        }
	}
}

二、HashMap嵌套ArrayList

eg:

题目:创建一个HashMap集合,存储三个键值对元素,每一个键值对元素的键是String,值是ArrayList,每一个ArrayList的元素是String,并进行遍历。

思路:

(1)创建一个HashMap集合

(2)创建一个ArrayList集合,并且添加元素

(3)把ArrayList作为元素添加到HashMap集合中

(4)遍历HashMap集合

package polish;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Set;
public class Qiantao2 {

	public static void main(String[] args) {
		//创建一个HashMap集合,值是ArrayList集合中的元素
		HashMap<String, ArrayList<String>> hm=new HashMap<String , ArrayList<String>>();
		//创建一个ArrayList集合,对应每首歌的作者
	ArrayList<String> jay=new ArrayList<String>();
	jay.add("稻香");
	jay.add("听妈妈的话");
	ArrayList<String> justinbieber=new ArrayList<String>();
	justinbieber.add("baby");
	justinbieber.add("smile");
	//将ArrayList集合作为元素加到HashMap集合中
	hm.put("jay",jay );
	hm.put("justinbieber", justinbieber);
	//利用HashMap集合的遍历方式进行遍历
	//将所有的键打包成一个集合
 	Set<String> key=hm.keySet();
 	for(String key1:key) {
 		System.out.println(key1+"的歌曲有:");
 	//此时的值为ArrayList集合
 		ArrayList<String> value=hm.get(key1);
 		//利用ArrayList集合遍历的方式进行遍历
 		for(String s:value) {
 			System.out.println("《"+s+"》");
 		 }
 	   }
	}
}

其中输出结果为:

jay的歌曲有:
《稻香》
《听妈妈的话》
justinbieber的歌曲有:
《baby》
《smile》

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值