java中数组list map三者之间的互转介绍

三者之间转换关系,一张图清晰呈现。
 
上代码:

其中的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();

}
}

(0)

相关推荐

  • java list,set,map,数组间的相互转换详解

    java list,set,map,数组间的相互转换详解 1.list转set Set set = new HashSet( new ArrayList()); 2.set转list List list = new ArrayList( new HashSet());  3.数组转为list List stooges = Arrays.asList( "Larry" , "Moe" , "Curly" ); 此时stooges中有有三个元素.注意

  • Java中动态地改变数组长度及数组转Map的代码实例分享

    动态改变数组的长度 /** * Reallocates an array with a new size, and copies the contents * * of the old array to the new array. * * @param oldArray the old array, to be reallocated. * * @param newSize the new array size. * * @return A new array with the same co

  • java 遍历Map及Map转化为二维数组的实例

    java 遍历Map及Map转化为二维数组的实例 实例代码: import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class Test { public static void main(String[] args) { int a = 0, b = 0, c = 0; // 第一种:通过Map.keySet()遍历Map及将Map转化为二维数组 Map<String, String>

  • Java map存放数组并取出值代码详解

    获取map的值主要有四种方法,这四种方法又分为两类,一类是调用map.keySet()方法来获取key和value的值,另一类则是通过map.entrySet()方法来取值,两者的区别在于,前者主要是先获取到所有的key的集合,当你需要查询value的值的时候需要通过key来查询value,后者则直接将key和value的键值对直接取出来,只用查询一次,对于那种性能更好,我觉得还是用map.entrySet()更好一点,具体请参见map.keySet()和map.EntrySet()的比较,接下

  • java中数组list map三者之间的互转介绍

    三者之间转换关系,一张图清晰呈现.  上代码: 其中的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.MapUtil

  • 浅析java中Pair和Map的区别

    在这篇文章中,我们讨论了一个非常有用的编程概念,配对(Pair).配对提供了一种方便方式来处理简单的键值关联,当我们想从方法返回两个值时特别有用. 在核心Java库中可以使用配对(Pair)的实现.除此之外,某些第三方库,比如Apache Commons和Vavr,已经在各自的api中公开了这个功能. 核心java配对实现 Pair类 Pair类在javafx.util 包中,类构造函数有两个参数,键及对应值: Pair<Integer, String> pair = new Pair<

  • Java中数组的定义和使用教程(二)

    数组与方法调用 数组是一个引用数据类型,那么所有的引用数据类型都可以为其设置多个栈内存指向.所以在进行数组操作的时候,也可以将其通过方法进行处理. 范例: 方法接受数组 public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {1, 2, 3}; printArray(data); } //定义一个专门进行数组输出的方法 public static void printArr

  • Java中数组的定义和使用教程(一)

    数组的基本概念 如果说现在要求你定义100个整型变量,那么如果按照之前的做法,可能现在定义的的结构如下: int i1, i2, i3, ... i100; 但是这个时候如果按照此类方式定义就会非常麻烦,因为这些变量彼此之间没有任何的关联,也就是说如果现在突然再有一个要求,要求你输出这100个变量的内容,意味着你要编写System.out.println()语句100次. 其实所谓的数组指的就是一组相关类型的变量集合,并且这些变量可以按照统一的方式进行操作.数组本身属于引用数据类型,那么既然是引

  • Java中数组的定义和使用教程(三)

    数组排序 在很多的面试题上都会出现数组排序的操作形式.但是这个时候你千万别写上:java.util.Arrays.sort(数组).而这种排序都是以升序为主. 基础的排序操作: 范例: 冒泡排序 public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {9, 3, 1, 5, 4, 2, 7, 8, 6, 0}; sort(data); printArray(data); }

  • java中String,数组,ArrayList三者之间的转换

    ArrayList转为String和数组 造一个元素为Integer的ArrayList 为list_int 造一个元素为String 的 ArrayList 为list_str ArrayList list_int = new ArrayList<Integer>(); //Integer的List list_int.add(1); list_int.add(3); list_int.add(5); list_int.add(9); ArrayList<String> list_

  • 详解Java中list,set,map的遍历与增强for循环

    详解Java中list,set,map的遍历与增强for循环 Java集合类可分为三大块,分别是从Collection接口延伸出的List.Set和以键值对形式作存储的Map类型集合. 关于增强for循环,需要注意的是,使用增强for循环无法访问数组下标值,对于集合的遍历其内部采用的也是Iterator的相关方法.如果只做简单遍历读取,增强for循环确实减轻不少的代码量. 集合概念: 1.作用:用于存放对象 2.相当于一个容器,里面包含着一组对象,其中的每个对象作为集合的一个元素出现 3.jav

  • 详解Java中数组判断元素存在几种方式比较

    1. 通过将数组转换成List,然后使用List中的contains进行判断其是否存在 public static boolean useList(String[] arr,String containValue){ return Arrays.asList(arr).contains(containValue); } 需要注意的是Arrays.asList这个方法中转换的List并不是java.util.ArrayList而是java.util.Arrays.ArrayList,其中java.

  • Java中数组的定义与使用

    目录 一.数组的基本用法 1.什么是数组 2.创建数组 3.数组的使用 二.数据作为方法参数 1.基本用法 2.理解引用类型 3.认识null 4.JVM内存区域划分 5.数组作为方法的返回值 6.关于数组的地址 四.数组练习 1.数组转字符串 2.数组拷贝 五.二维数组 1.二维数组的语法 2.二维数组的结构 3.用for-each遍历二维数组 总结 一.数组的基本用法 1.什么是数组 数组本质上就是让我们能 "批量" 创建相同类型的变量. 如果我们需要创建多个同一个类型的变量,则不

  • 5种Java中数组的拷贝方法总结分享

    目录 1.for循环 2.调用clone()方法 3.Arrays类中的Arrays.copyOf()方法 4.copyOfRange()方法 5.System.arraycopy()方法 1.for循环 for循环拷贝是最简单直观的方法,循环访问当前数组的每一个元素,并复制到新数组的相应下标. 示例代码: 运行结果: 2.调用clone()方法 该方法是类Object类中的方法:使用clone方法进行拷贝时,是将arr中的所有元素都拷贝下来,不可以挑选. clone() 方法的返回值是 Obj

随机推荐