Java中Map.Entry的相关简介

Map是java中的接口,Map.Entry是Map的一个内部接口。

Map提供了一些常用方法,如keySet()、entrySet()等方法。

keySet()方法返回值是Map中key值的集合;entrySet()的返回值也是返回一个Set集合,此集合的类型为Map.Entry。

Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry。它表示Map中的一个实体(一个key-value对)。接口中有getKey(),getValue方法。

package com.dbzhang.demo;

import java.util.Map;
import java.util.Map.Entry;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;

/**
 * 将json转化成map集合
 * 
 * @author Administrator
 *
 */
public class Json2Map {

	public static void main(String[] args) {
		String str = "{\"A\":\"ZDB\",\"B\":\"ZDB1\",\"C\":\"ZDB2\",\"D\":\"ZDB3\"}";  
        //第一种方式  
        Map maps = (Map)JSON.parse(str);  
        System.out.println("这个是用JSON类来解析JSON字符串"+maps);  
        //Map.Entry是Map的内部接口,其中Map.Entry是个泛型,内部方法有:getKey()和entrySet()
        for (Object map : maps.entrySet()){  
            System.out.println(((Map.Entry) map).getKey()+"     " + ((Map.Entry)map).getValue());  
        }
        
      //第二种方式  
        Map mapTypes = JSON.parseObject(str);  
        System.out.println("这个是用JSON类的parseObject来解析JSON字符串!!!"+mapTypes);  
        for (Object obj : mapTypes.keySet()){  
            System.out.println("key为:"+obj+"值为:"+mapTypes.get(obj));  
        }
        
        
      //第三种方式  
        Map mapType = JSON.parseObject(str,Map.class);  
        System.out.println("这个是用JSON类,指定解析类型,来解析JSON字符串!!!"+mapType);  
        for (Object obj : mapType.keySet()){  
            System.out.println("key为:"+obj+"值为:"+mapType.get(obj));  
        }
        
      //第四种方式  
        /** 
         * JSONObject是Map接口的一个实现类 
         */  
        Map json = (Map) JSONObject.parse(str);  
        System.out.println("这个是用JSONObject类的parse方法来解析JSON字符串!!!"+json);  
        for (Object map : json.entrySet()){  
            System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
        } 
        
        
        
      //第五种方式  
        /** 
         * JSONObject是Map接口的一个实现类 
         */  
        JSONObject jsonObject = JSONObject.parseObject(str);  
        System.out.println("这个是用JSONObject的parseObject方法来解析JSON字符串!!!"+jsonObject);  
       for (Object map : json.entrySet()){  
            System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
        }  
        //第六种方式  
        /** 
         * JSONObject是Map接口的一个实现类 
         */  
        Map mapObj = JSONObject.parseObject(str,Map.class);  
        System.out.println("这个是用JSONObject的parseObject方法并执行返回类型来解析JSON字符串!!!"+mapObj);  
        for (Object map: json.entrySet()){  
            System.out.println(((Map.Entry)map).getKey()+"  "+((Map.Entry)map).getValue());  
        }
	}
}

    

你可能感兴趣的:(接口,Java基础知识)