记录几个常用的java 集合转换方法(Map、List、String[]、JSON)

以下数据JDK1.7环境

  • Map 单独取所有的Key值和value值
        Map map = new HashMap();
        map.put("A","1");
        map.put("B","2");
        map.put("C","3");
        map.put("D","4");
        map.put("E","5");
        map.put("F","6");

	    // 获取所有的key值
        Set set =  map.keySet();
        String[] strsTrue = set.toArray(new String[set.size()]);
        List list = new ArrayList(Arrays.asList(strsTrue)) ;
        System.out.println(strsTrue);
        System.out.println(list);
        
        // 获取所有的values值
        Collection values = map.values();
        List listmap = new ArrayList(values);
        System.out.println(listmap);

       // map中的键值对转为set
        Set> entry = map.entrySet();

  • fastjson List转JSONArray以及JSONArray转List
	// fastjson  List转JSONArray
	List list = new ArrayList();
	JSONArray array= JSONArray.parseArray(JSON.toJSONString(list));


  // fastjson  JSONArray转List
    JSONArray array = new JSONArray(); 
    List list = JSONObject.parseArray(array.toJSONString(), EventColAttr.class);


 // fastjson  字符串转List
    String str = "";
    List list = JSONObject.parseArray(str,T.class);

  • String[] 、List 互转
        //准备一个String数组
        String[] strs = {"aa","bb","cc"};
        
         //String数组 转 List  不支持add和remove方法
        List strsToList1= Arrays.asList(strs);
        strsToList1.add("DD");      // 错误 ,虽然能转,但是丢失部分方法
        
        //String数组 转 List  支持add和remove方法
        List strsToList2= new ArrayList(Arrays.asList(strs));

        strsToList2.add("ZZ");

        System.out.println(strsToList1);
        System.out.println(strsToList2);
  • [ String[] to List ]
     //准备一个String数组
        String[] strs = {"aa","bb","cc"};
        
         //String数组 转 List  不支持add和remove方法
        List strsToList1= Arrays.asList(strs);
        strsToList1.add("DD");      // 错误 ,虽然能转,但是丢失部分方法
        
        //String数组 转 List  支持add和remove方法
        List strsToList2= new ArrayList(Arrays.asList(strs));

        strsToList2.add("ZZ");

        System.out.println(strsToList1);
        System.out.println(strsToList2);
  • [ List to String[] ]
	//先准备一个List
	List testList=new ArrayList<>();
	testList.add("a");
	testList.add("b");
	testList.add("c");
	//List转String
	String[] strs1=testList.toArray(new String[testList.size()]);
	for(String s:strs1){
	   System.out.println(s);
	}

你可能感兴趣的:(Java中级篇)