Java 集合转换(数组、List、Set、Map相互转换)
2015-08-03 22:27
801 查看
package com.example.test; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; public class ConvertorTest { /** * @param args */ public static void main(String[] args) { testList2Array(); testArray2List(); testSet2List(); testList2Set(); testSet2Array(); testArray2Set(); testMap2Set(); testMap2List(); } private static void testMap2List() { Map<String, String> map = new HashMap<String, String>(); map.put("A", "ABC"); map.put("K", "KK"); map.put("L", "LV"); // 将Map Key 转化为List List<String> mapKeyList = new ArrayList<String>(map.keySet()); System.out.println("mapKeyList:"+mapKeyList); // 将Map Key 转化为List List<String> mapValuesList = new ArrayList<String>(map.values()); System.out.println("mapValuesList:"+mapValuesList); } private static void testMap2Set() { Map<String, String> map = new HashMap<String, String>(); map.put("A", "ABC"); map.put("K", "KK"); map.put("L", "LV"); // 将Map 的键转化为Set Set<String> mapKeySet = map.keySet(); System.out.println("mapKeySet:"+mapKeySet); // 将Map 的值转化为Set Set<String> mapValuesSet = new HashSet<String>(map.values()); System.out.println("mapValuesSet:"+mapValuesSet); } private static void testArray2Set() { String[] arr = {"AA","BB","DD","CC","BB"}; //数组-->Set Set<String> set = new HashSet<String>(Arrays.asList(arr)); System.out.println(set); } private static void testSet2Array() { Set<String> set = new HashSet<String>(); set.add("AA"); set.add("BB"); set.add("CC"); String[] arr = new String[set.size()]; //Set-->数组 set.toArray(arr); System.out.println(Arrays.toString(arr)); } private static void testList2Set() { List<String> list = new ArrayList<String>(); list.add("ABC"); list.add("EFG"); list.add("LMN"); list.add("LMN"); //List-->Set Set<String> listSet = new HashSet<String>(list); System.out.println(listSet); } private static void testSet2List() { Set<String> set = new HashSet<String>(); set.add("AA"); set.add("BB"); set.add("CC"); //Set --> List List<String> setList = new ArrayList<String>(set); System.out.println(setList); } private static void testList2Array() { //List-->数组 List<String> list = new ArrayList<String>(); list.add("AA"); list.add("BB"); list.add("CC"); Object[] objects = list.toArray();//返回Object数组 System.out.println("objects:"+Arrays.toString(objects)); String[] arr = new String[list.size()]; list.toArray(arr);//将转化后的数组放入已经创建好的对象中 System.out.println("strings1:"+Arrays.toString(arr)); } private static void testArray2List() { //数组-->List String[] ss = {"JJ","KK"}; List<String> list1 = Arrays.asList(ss); List<String> list2 = Arrays.asList("AAA","BBB"); System.out.println(list1); System.out.println(list2); } }
相关文章推荐
- java特殊运算符
- Java之适配器模式(Adapter Pattern)
- Java 之工厂方法和抽象工厂模式
- Java之命令模式(Command Pattern)
- Java上传下载excel、解析Excel、生成Excel的问题
- hadoop-eclipse插件编译备注
- Java之装饰模式(Decorator Pattern)
- Java学习笔记---基本类型、运算优先级的一些知识整理
- HDU 1016 java 已Ac
- java volatile和atomic包的区别
- java 各种规范的地址 包括 java se 与java ee
- java socket编程实例代码讲解
- MAVEN下实现spring boot打包成war包(spring boot 01)
- 关于java ee 7 精粹
- java线程池原理
- java设计模式(二)
- 使用eclipse tool 逆向生成Hiberante类xml、和hbm.xml
- java 类加载机制
- Java进阶(五十一)必须记住的Myeclipse快捷键
- 必须记住的Myeclipse快捷键