Java语言-30:集合的嵌套定义和遍历

1、集合主要分为单列集合Collection和双列集合Map;

        Collection集合有接口:list和set

        map集合有接口:HashMap和TreeMap以及Hashtable

list接口的实现类有:

        ArrayList、LinkedList和Vector(不常用)

set接口的实现类有:

        HashSet和TreeSet。而HashSet有一个子实现类LinkedHashSet。

2、集合嵌套的原因

        每个集合的功能不同,则能实现的功能有所不同。例如list集合不能保证集合无重复元素,但Set集合则可以保证集合中无重复元素。再比如要输出一个键值对的集合元素,则需要map集合,则需 使用map集合的实现类HashMap来实现。

3、集合嵌套定义和遍历的方法

        通过例题来说明这个情况:

比如有一个需求:假设ArrayList集合的元素是HashMap。有3个。

                      每一个HashMap集合的键和值都是字符串。

        进行分析:1)首先需创建一个ArrayList<HashMap<String,String>>list = newArrayList<HashMap<String,String>>();

                                  2)接下来就是向集合中添加元素

                    则首先向HashMap集合中添加<String,String>类型的键值对元素

                    则需先创建一个HashMap集合

                       HashMap<String,String>map = new HashMap<String,String>();

                    向HashMap集合中添加元素,使用put()方法

                        map.put(“String”,“String”);//添加若干元素

                        接下来将map集合中的元素加入到list集合中,使用add()方法;

                        list.add(map);

            对元素进行遍历:

                    for( HashMap<String,String> h : list){

                            for(String s : h.keySet()){

            Systrm.out.println(s + "------------" + ha.get(s));   

   }          

}

            将上述思路编译成程序则为:

                        public static void main(String[] args) {
// 创建集合
ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();


// 向嵌套集合中添加元素


// 先创建第一个HashMap集合
HashMap<String, String> map = new HashMap<String, String>();
// 向map集合中添加元素
map.put("周瑜", "小乔");
map.put("吕布", "貂蝉");
// 将map集合中的元素加入到list集合中
list.add(map);


// 创建第二个HashMap集合
HashMap<String, String> map1 = new HashMap<String, String>();
// 向map1集合中添加元素
map1.put("郭靖", "黄蓉");
map1.put("杨过", "小龙女");
// 将map1集合中的元素加入到list集合中
list.add(map);


// 创建第三个HashMap集合
HashMap<String, String> map2 = new HashMap<String, String>();
// 向map2集合中添加元素
map2.put("令狐冲", "任盈盈");
map2.put("林平之", "岳灵珊");
// 将map1集合中的元素加入到list集合中
list.add(map2);


// 遍历集合元素


// 遍历list集合
for (HashMap<String, String> ha : list) {
// 遍历HashMap集合
for (String s : ha.keySet()) {
// 输出集合元素
System.out.println(s + "------------" + ha.get(s));
}
}
}


猜你喜欢

转载自blog.csdn.net/qq_41833394/article/details/80279691
今日推荐