您的位置:首页 > 编程语言 > Java开发

java遍历list和map集合

2017-06-22 00:00 337 查看
package JavaSenior;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Iterator;

import java.util.List;

import java.util.Map;

/**

*

* Set和List的区别

1. Set 接口实例存储的是无序的,不重复的数据。List 接口实例存储的是有序的,可以重复的元素。

2. Set检索效率低下,删除和插入效率高,插入和删除不会引起元素位置改变 <实现类有HashSet,TreeSet>。

3. List和数组类似,可以动态增长,根据实际存储的数据的长度自动增长List的长度。查找元素效率高,

插入删除效率低,因为会引起其他元素位置改变 <实现类有ArrayList,LinkedList,Vector> 。

*

* 遍历map的四种方法

* */

public class Java_List_map {

public static void main(String[] args) {

//遍历list

List<String> list = new ArrayList<String>();

list.add("hello");

list.add("world");

list.add("hahaha");

//方法1

for (String str : list) {

System.out.println("foreach:"+str);

}

//方法2

for (int i = 0; i < list.size(); i++) {

System.out.println("for:"+list.get(i));

}

//方法3

Iterator<String> iter = list.iterator();

while (iter.hasNext()){

System.out.println("iterator:"+iter.next());

}

//遍历map

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

map.put("1", "hello1");

map.put("2", "hello2");

map.put("3", "hello3");

//第一种:普遍使用,二次取值

System.out.println("通过Map.keySet遍历key和value:");

for (String key : map.keySet()) {

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

}

//第二种

System.out.println("通过Map.entrySet使用iterator遍历key和value:");

Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();

while (it.hasNext()) {

Map.Entry<String, String> entry = it.next();

System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());

}

//第三种:推荐,尤其是容量大时

System.out.println("通过Map.entrySet遍历key和value");

for (Map.Entry<String, String> entry : map.entrySet()) {

System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());

}

//第四种

System.out.println("通过Map.values()遍历所有的value,但不能遍历key");

for (String v : map.values()) {

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

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  list map