三者之间转换关系,一张图清晰呈现。
上代码:
其中的maputils是apache的collection包。
复制代码 代码如下:
package util;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.collections.MapUtils;
public class Convert {
public static void main(String[] args) {
//1.数组转换为list,map
String[] arr = {"123","456","789","123"};
List<String> list = Arrays.asList(arr);
//数组转换为map,一维数组时,奇数为key,偶数为value,奇数个元素,最后一个舍掉
//.二维数组当做两个一维数组
Map map = MapUtils.putAll(new HashMap(), arr);
String[][] ss = {{"a","b","e"},{"c","d","f"}};
MapUtils.debugPrint(System.out,arr,map);
MapUtils.putAll(map, arr);
MapUtils.debugPrint(System.out,arr,map);
MapUtils.putAll(map, ss);
MapUtils.verbosePrint(System.out,arr,MapUtils.invertMap(map));
//list 转换为arr
List<String> ls = new ArrayList<String>();
ls.add("wch");
ls.add("name");
String[] as = (String[]) ls.toArray();
}
}