Java.util.EnumMap 示例详解编程语言

JavaEnumMapExample.java 
 
package com.jcg.example; 
 
import java.util.EnumMap; 
import java.util.Map; 
 
/** 
 *  
 * @author anirudh 
 * 
 */ 
public class JavaEnumMapExample { 
	 
	public enum MealType{ 
		BREAKFAST,LUNCH,SNACK,DINNER 
	} 
 
	public static void main(String[] args) { 
		 
		Map myMealMap = new EnumMap(MealType.class); 
                 
                //populate the map 
		myMealMap.put(MealType.BREAKFAST,"Enjoy Milk and Eggs for breakfast!"); 
		myMealMap.put(MealType.LUNCH,"Enjoy Chicken, Rice and bread for Lunch!"); 
		myMealMap.put(MealType.SNACK,"How about an apple for the evening snack!"); 
		myMealMap.put(MealType.DINNER,"Keep the dinner light, lets have some salad!"); 
		 
		System.out.println("Welcome to meal planner, we have suggestions for following meals : "); 
		 
		//print all the keys of enum map in sorted order 
		System.out.println(myMealMap.keySet()); 
		 
		//We can get the value from enumType 
		System.out.println(" Q: What should I have for lunch? "); 
		System.out.println(" A: "+myMealMap.get(MealType.LUNCH)); 
		 
		System.out.println(" Q: What should I have for snack? "); 
		System.out.println(" A: "+myMealMap.get(MealType.SNACK)); 
		 
		System.out.println(" Q: What should I have for dinner? "); 
		System.out.println(" A: "+myMealMap.get(MealType.DINNER)); 
 
		//Iterate over enumMap 
		for (MealType mealType : myMealMap.keySet()) { 
			System.out.println(myMealMap.get(mealType)); 
		} 
		System.out.println("*** Checking for concurrent modification exception! ***"); 
		//Does not throw Concurrent modification Exception in enumMap 
		for (MealType mealType : myMealMap.keySet()) { 
			if(MealType.SNACK.equals(mealType)){ 
				myMealMap.remove(MealType.SNACK); 
			} 
		} 
		 
		//map changed without throwing Concurrent modification Exception 
		System.out.println(myMealMap);		 
		 
		 
	} 
 
} 
 

Output: 
 
 
Welcome to meal planner, we have suggestions for following meals :  
[BREAKFAST, LUNCH, SNACK, DINNER] 
 Q: What should I have for lunch?  
 A: Enjoy Chicken, Rice and bread for Lunch! 
 Q: What should I have for snack?  
 A: How about an apple for the evening snack! 
 Q: What should I have for dinner?  
 A: Keep the dinner light, lets have some salad! 
Enjoy Milk and Eggs for breakfast! 
Enjoy Chicken, Rice and bread for Lunch! 
How about an apple for the evening snack! 
Keep the dinner light, lets have some salad! 
*** Checking for concurrent modification exception! *** 
{BREAKFAST=Enjoy Milk and Eggs for breakfast!, LUNCH=Enjoy Chicken, Rice and bread for Lunch!, DINNER=Keep the dinner light, lets have some salad!} 
 

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/11086.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论