`

黑马程序员19-7:foreach遍历核心源码,遍历HashMap需要用map.keySet()或map.entrySet()

 
阅读更多
------- android培训 java培训、期待与您交流!-------



package cn.itcast.p4.news.demo;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ForEachDemo {

	/**
	 * @param args
	 */
	public static void main(String[] args) {

		/*
		 * 	语句:
		 * 格式:
		 * for(类型  变量   :Collection集合|数组)
		 * {
		 * 		
		 * }
		 * 
		 * 传统for和高级for的区别?
		 * 传统for可以完成对语句执行很多次,因为可以定义控制循环的增量和条件。
		 * 
		 * 高级for是一种简化形式。
		 * 它必须有被遍历的目标。该目标要是数组,要么是Collection单列集合。
		 * 
		 * 对数数组的遍历如果仅仅是获取数组中的元素,可以使用高级for。
		 * 如果要对数组的角标进行操作建议使用传统for。 
		 *  
		 */
		
		List<String> list =new ArrayList<String>();
		
		list.add("abc1");
		list.add("abc2");
		list.add("abc3");
		
		for(String s : list){	//简化书写。		
			System.out.println(s);			
		}
		
		
		int[] arr = {3,1,5,7,4};
		
		for(int i : arr){
			System.out.println(i);
		}
		
		
		//可以使用高级for遍历map集合吗?不能直接用,但是可以将map转成单列的set,就可以用了。
		Map<Integer,String> map = new HashMap<Integer,String>();
		
		map.put(3,"zhagsan");
		map.put(1,"wangyi");
		map.put(7,"wagnwu");
		map.put(4,"zhagsansan");
		
		
		for(Integer key : map.keySet()){
			String value = map.get(key);
			System.out.println(key+"::"+value);
		}
		
		for(Map.Entry<Integer,String> me : map.entrySet()){
			Integer key = me.getKey();
			String value = me.getValue();
			
			System.out.println(key+":"+value);
		}
		
		
//		Iterator<String> it = list.iterator();	
//		while(it.hasNext()){
//			System.out.println(it.next());
//		}
		
		
	}

}


------- android培训 java培训、期待与您交流!-------


详细请查看:http://edu.csdn.net/heima -------
分享到:
评论
1 楼 yy22258867 2013-03-25  
       :twisted:   

相关推荐

    map遍历的四种方法

    这种方法首先获取`Map`的所有键集合(`keySet`),然后通过迭代器或者增强型for循环(也称为foreach循环)遍历这些键,并使用`get()`方法获取与每个键相对应的值。 **示例代码:** ```java public static void main...

    java遍历大容量map的正确方法.pdf

    在Java编程中,遍历大容量的Map是一个常见的操作,特别是在处理大数据或内存优化的场景下,选择正确的遍历方式至关重要。以下是对标题和描述中提及的四种遍历Map方法的详细说明: 1. **通过Map.keySet遍历key和...

    计算机遍历Map集合.pdf

    1. **遍历键集合**:Map集合提供了keySet()方法,返回一个包含所有键的Set视图。可以通过迭代器或增强for循环遍历这个键集合,然后使用get()方法获取对应的值。例如: ```java Set&lt;Object&gt; keys = map.keySet(); for...

    Java 实例 - HashMap遍历源代码-详细教程.zip

    - **foreach循环**:Java 5引入了增强的for循环(也称为foreach),可以直接遍历Map的键值对,例如:`for (Map.Entry, Value&gt; entry : map.entrySet()) {...}` 4. **源代码解析**: - `put`操作:当插入新的键值...

    遍历Map集合.pdf

    本文主要讲解了在Java中如何遍历Map集合,这是在日常编程中经常遇到的一个操作,特别是在需要处理键值对数据时。以下将详细介绍Map集合的遍历方法以及一些相关的知识点。 首先,Map是Java集合框架中的一个接口,它...

    java-遍历map

    通过这个方法,我们可以获取到一个包含所有键的`Set`集合,然后使用迭代器(`Iterator`)或增强型for循环(foreach)来遍历这个`Set`,从而间接地遍历整个`Map`。 #### 示例代码解析: ```java private String ...

    map集合遍历的五种方法

    通过`map.entrySet().stream()`创建流,然后使用`forEach`或其他流操作处理每个元素。示例代码如下: ```java map.entrySet().stream() .forEach(entry -&gt; System.out.println("Key: " + entry.getKey() + ", ...

    Java 实例 - 集合遍历源代码-详细教程.zip

    例如,我们可以使用map和forEach方法来遍历集合: ```java list.stream().forEach(System.out::println); map.forEach((key, value) -&gt; System.out.println("Key: " + key + ", Value: " + value)); ``` 总结,...

    java Map遍历方法

    自Java 8起,`Map`接口引入了`forEach`方法,使用Lambda表达式或方法引用来遍历键值对。 ```java map.forEach((key, value) -&gt; System.out.println("Key: " + key + ", Value: " + value)); ``` 5. **流(Stream...

    Map集合的遍历.md

    除了使用`Iterator`进行遍历外,还可以使用增强型for循环(foreach循环)来简化遍历过程。这种方式与上述两种方法本质上是一样的,只是语法更简洁。 **示例代码:** ```java // 使用keySet的增强for循环 public ...

    List,Set和Map遍历读取[归类].pdf

    在实际开发中,根据具体需求选择合适的遍历方法,例如,如果只需要访问key而不关心value,那么使用keySet遍历Map会更高效。同时,增强型for循环由于其简洁性,已经成为Java程序员的首选。了解并熟练掌握这些遍历方法...

    遍历map

    可以使用`map.entrySet().stream()`创建一个流,然后通过`forEach`进行遍历。代码示例: ```java map.entrySet().stream() .forEach(entry -&gt; System.out.println("Key: " + entry.getKey() + ", Value: " + ...

    Map实现类1

    - 使用迭代器Iterator:通过Map的keySet()、values()或entrySet()方法获取迭代器进行遍历。 - 使用Lambda表达式:Java 8引入的流API可以更简洁地遍历Map,如map.entrySet().stream().forEach(System.out::println)...

    java遍历特例

    文档进一步展示了JDK 1.5中引入的新特性——增强的for循环(也称为“foreach”循环),用于遍历`Map`: ```java Map m = new HashMap(); for (Object o : m.keySet()) { m.get(o); } ``` 这种方法通过`keySet()`...

    java中map集合的用法.pdf

    遍历Map时,通常需要先获取对应的视图(如keySet()或entrySet()),然后使用迭代器进行迭代。例如: ```java for (Map.Entry, String&gt; entry : map.entrySet()) { String key = entry.getKey(); String value =...

    How to Iterate Over a Map in Java

    首先,Java中的Map接口定义了几个方法来遍历Map,它们是`entrySet()`,`keySet()`和`values()`。这些方法返回的集合对象分别代表Map的所有条目、所有键和所有值,可以用来进行迭代操作。 1. 使用`entrySet()`遍历...

    【IT十八掌徐培成】Java基础第13天-01.Map的迭代方式.zip

    但是,Map提供了两个主要的迭代途径:通过Map的entrySet()、keySet()或values()方法获取迭代器,然后遍历键值对、键或值。 1. **entrySet()方法**:这是最常用的迭代方式,返回Map中的所有键值对集合。你可以通过...

    java集合map取key使用示例 java遍历map

    在Java编程中,集合框架是处理数据的重要工具,而Map接口是其中一种特殊的数据结构,它存储键值对...使用`entrySet()`、`keySet()`或`values()`,配合迭代器或增强的for循环,都可以方便地访问和操作Map中的键值对。

    javatraining:Java遍历

    - 对于一维数组,可以使用for循环或增强for循环(foreach)进行遍历。例如: ```java int[] array = {1, 2, 3, 4, 5}; // 使用for循环 for (int i = 0; i &lt; array.length; i++) { System.out.println(array[i]...

    Java Map遍历方法

    6. **注意并发问题**: 如果在多线程环境中遍历Map,应考虑使用`ConcurrentMap`的并发安全遍历方法,如`forEach()`,或者使用`Collections.synchronizedMap()`使普通Map线程安全。 7. **流式处理**: 自JDK 8起,还...

Global site tag (gtag.js) - Google Analytics