×
泛型及Map集合遍历
作者:admin     责任编辑:admin     分享到:     2018年04月25日

泛型

一、Java 5.0版本推出的新特性。泛型,即参数化类型。允许程序员在编写强类型语言时指明类型,特别是集合的应用中,泛型尤为重要。可避免存取过程中出现的异常。

1.以List集合举例:

List list= new ArrayList();

list.add("a");

list.add(1);

for(int i=0;i}

此时如果对List集合进行for循环遍历。那么数据接收类型该是String 还是Integer,或是别的呢?

用泛型<参数类型> 可避免这个问题。只能往集合中添加同一类型的值,获取时,也只能用一种类型去接收。

2、泛型擦除

泛型只存在于编码阶段。泛型被编译到class文件中
二、Map遍历方式(片段代码,不含类和方法)

Map map = new HashMap();

map.put("a",1);

map.put("b",2);

map.put("c",3);

1、for循环遍历,分别取key和value

for(Map.Entry entry : tempMap.entrySet()){

String key = entry.getKey().toString();

Integer value = entry.getValue();

System.out.println("key=" + key + " value=" + value);

}

2、 迭代器 hashmap entrySet()遍历

Iterator it = tempMap.entrySet().iterator();

while (it.hasNext()) {

Map.Entry entry = (Map.Entry) it.next();

Object key = entry.getKey();

Object value = entry.getValue();

System.out.println("key=" + key + " value=" + value);

}

3、 hashmap keySet() 遍历

for (Iterator i = tempMap.keySet().iterator(); i.hasNext();) {

Object key = i.next();

System.out.println("key=" + key + " value=" + tempMap.get(key));

}

4、Lambda表达式取值 java8提供

map.forEach(

(key, value) -> {

System.out.println(key + ":" + value);

}

);


上一篇:OA系统中的知识管理
下一篇:天健通泰技术分享 – 浅析MVVM与vue.js
电话 Tel:(86)10-62169460
传真 Fax:(86)10-62169465
E-mail:callme@digitaltest.cn

地址:北京市海淀区中关村南大街12号中国农业科学院内科海福林大厦601室100081
Copyright © 2018 Website: www.digitaltest.cn 京ICP备11028080号