精华内容
下载资源
问答
  • 在日常开发中,经常会遇到数组转集合,例如调用Arrays.asList()会返回一个ArrayList。当我们想在这个集合中使用add()方法的时候就会出现报错如下图所示 出现这种原因是由于Arrays.asList()方法返回的是一个内部类...

    在日常开发中,经常会遇到数组转集合,例如调用Arrays.asList()会返回一个ArrayList。当我们想在这个集合中使用add()方法的时候就会出现报错如下图所示

    出现这种原因是由于Arrays.asList()方法返回的是一个内部类ArraysList.此ArraysList并不是List的实现类ArraysList的那个对象。进入Arrays的源代码中发现这个内部类并没有提供add()方法,就出现了java.lang.UnsupportedOperationException异常

      那么我们要通过这个方法把数组转换成集合并且使用add()方法。要怎么做呢?下面是给出的一个静态方法,只需要传入数据就可以获取对应的集合并可以使用add方法添加。关于Stream流的研究本人还不理解也是在网上找的工具类。

    public static <E> List<E> transferArrayToList(E[] array){
            List<E> transferedList = new ArrayList<>();
            Arrays.stream(array).forEach(arr -> transferedList.add(arr));
            return transferedList;
        }

     

    展开全文
  • 数组转换成集合

    2019-08-31 11:20:23
    数组转换成集合 import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class Demo4_AsList { public static void main(String[] args) { demo1(); //demo2(); //集合...

    将数组转换成集合

    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;
    
    public class Demo4_AsList {
    
    	public static void main(String[] args) {
    		demo1();
    		//demo2();
    		//集合转数组,加泛型的
    		//demo3();
    	}
    
    	public static void demo3() {
    		ArrayList<String> list = new ArrayList<>();
    		list.add("a");
    		list.add("b");
    		list.add("c");
    		list.add("d");
    		
    		String[] arr = list.toArray(new String[10]);		//当集合转换数组时,数组长度如果是小于等于集合的size时,转换后的数组长度等于集合的size
    															//如果数组的长度大于了size,分配的数组长度就和你指定的长度一样
    		for (String string : arr) {
    			System.out.println(string);
    		}
    	}
    
    	public static void demo2() {
    //		int[] arr = {11,22,33,44,55};			
    //		List<int[]> list = Arrays.asList(arr);			
    //		System.out.println(list);						//[[I@15db9742]
    		Integer[] arr = {11,22,33,44,55};					
    		List<Integer> list = Arrays.asList(arr);
    		System.out.println(list);					//[11, 22, 33, 44, 55]
    	}
    
    	public static void demo1() {
    		String[] arr = {"a","b","c"};
    		List<String> list = Arrays.asList(arr);				//将数组转换成集合
    		//list.add("d");									//不能添加
    		System.out.println(list);
    	}
    
    }
    
    
    总结:1.数组转换成集合虽然不能增加或减少元素,但是可以用集合的思想操作数组,也就是说可以使用其他集合中的方法。2.基本数据类型的数组转换成集合,会将整个数组当作一个对象转换。3.将数组转换成集合,数组必须是引用数据类型。
    展开全文
  • Java 数组转成集合List 三种方法 package com.list; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * Java 数组转成集合List * @author luolei * @date 2019年2月18日 ...

    Java 数组转成集合List 三种方法

    package com.list;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;
    
    /**
     * Java 数组转成集合List
     * @author luolei
     * @date 2019年2月18日
     */
    public class ArrayToList {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		//1、new arr[]
    		//String[] arr = {"luo","lei","luolei"};
    		//2、new arr[]
    		/*String[] arr = new String[4];
    		arr[0] = "luo";
    		arr[1] = "lei";
    		arr[2] = "luolei";*/
    		//3 、new arr[]
    		String[] arr= new String[]{"luo","lei","luolei"};
    		
    		//1、拆分数组,逐个添加到List
    		List<String> list = new ArrayList<>(arr.length);
    		for (String str : arr) {
    			list.add(str);
    		}
    		System.out.println("list="+list); //list=[luo, lei, luolei]
    		
    		//2、addAll()
    		List<String> list2 = new ArrayList<>();
    		list2.addAll(list);
    		list2.addAll(list);
    		System.out.println("list2="+list2); //list2=[luo, lei, luolei, luo, lei, luolei]
    		
    		//3、Arrays.asList()
    		List<String> list3= new ArrayList<>(Arrays.asList(arr));
    		System.out.println("list3="+list3); //list3=[luo, lei, luolei]
    	}
    
    }
    

     数组、集合List、Set相互转换

    package com.list;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.HashSet;
    import java.util.List;
    import java.util.Set;
    /**
     * 数组、List、Set相互转换
     * @author luolei
     * @date 2019年2月18日
     */
    public class ArrayAndListAndSetConvertion {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		
    		String[] arr= new String[]{"luo","lei","luolei"};
    		//数组转List
    		List<String> list= new ArrayList<>(Arrays.asList(arr));
    		System.out.println("list="+list); //list=[luo, lei, luolei]
    		//数组转Set
    		Set<String> set= new HashSet<>(Arrays.asList(arr));
    		System.out.println("set="+set); //set=[luolei, luo, lei]
    		//List转Set
    		Set<String> set2 = new HashSet<String>(list);
    		System.out.println("set2="+set2); //set2=[luolei, luo, lei]
    		//Set转List
    		List<String> list2 = new ArrayList<String>(set2);
    		System.out.println("list2="+list2); //list2=[luolei, luo, lei]
    	}
    
    }
    

     

    展开全文
  • 使用工具类 Arrays.asList()把数组转换成集合时,不能使用其修改集合相关的方 法,它的 add/remove/clear 方法会抛出 UnsupportedOperationException 异常。 说明:asList 的返回对象是一个 Arrays 内部类,并没有...

      使用工具类 Arrays.asList()把数组转换成集合时,不能使用其修改集合相关的方 法,它的 add/remove/clear 方法会抛出 UnsupportedOperationException 异常。

    说明:asList 的返回对象是一个 Arrays 内部类,并没有实现集合的修改方法。Arrays.asList 体现的是适配器模式,只是转换接口,后台的数据仍是数组。 

        String[] str = new String[] { "you", "wu" };    

        List list = Arrays.asList(str);

    第一种情况:list.add("yangguanbao"); 运行时异常。

    第二种情况:str[0] = "gujin"; 那么 list.get(0)也会随之修改。

    展开全文
  • 数组转换List集合

    万次阅读 多人点赞 2019-07-08 13:57:21
    问题描述:对于给定的如下数组,如何转换List集合? String[] array = {"a","b","c"}; 参考stackoverflow总结如下几种写法: 1.使用原生方式,拆分数组,添加到List List<String> resultList = new ...
  • 文档写出如果第一个参数集合c如果支持add操作仍然抛出UnsupportedOperationException,就比如刚刚用一个数组List<Integer> list = Arrays.asList(a);此时的list允许add操作,会抛出...
  • 数组转换成集合到方法

    千次阅读 2017-04-07 17:12:32
    1. addAll方法 2. 或者一个个add进去也行 3. 用arrays工具类的方法
  • import java.util.Arrays; import java.util.List; /* * public static List asList(T.... * 虽然可以把数组转成集合,但是集合的长度不能改变。改变长度的方法不能使用 */ public class ArraysDemo { public stati
  • 将list集合转化string数组:用toArray3. String数组转集合4. String数组转换字符串:使用 Apache Commons 组件中的 commons-lang3.jar包5. String转换byte[]或者byte[]转换String 1. 基本类型字符串: ...
  • 最近在学习集合学到Array和ArryList的区别时,发现:数组转换List之后不能进行add和remove操作。 例: public class Test { public static void main(String[] args) { String[]str={"111","222","333"}; ...
  • Java之数组转集合&集合转数组

    万次阅读 多人点赞 2019-04-16 23:50:48
    那么为什么不能转换为Set集合呢? 原因是:Set不能存放重复元素,所以若转换为Set集合可能出现丢失元素的情况。。。 数组转换为集合使用的是数组的工具类Arrays的静态方法asList。查看API文档可知该方法返回由指定...
  • string数组转换int数组 Array.ConvertAll<string,int>(string的数组,int.Parse); 数组转字符串,以逗号分隔 string[] 数组 = post.体检编号数组; string str = string.Join(",", 数组); list集合转字符...
  • Java 数组如何转成List集合

    千次阅读 2018-04-23 10:05:31
    问题描述:对于给定的如下数组,如何转换List集合? String[] array = {“a”,”b”,”c”}; 参考stackoverflow总结如下几种写法: 1.使用原生方式,拆分数组,添加到ListList resultList = new ArrayList<&...
  • 数组转换集合or集合转换成数组

    千次阅读 2019-04-22 22:51:52
    1.数组转换为集合 使用数组的工具类Arrays的方法asList 需要注意,只能转换为List集 public class ArrayToListDemo { public static void main(String[] args) { String[] array = {"one","two","three","four...
  • 数组如何转换List集合

    千次阅读 2019-09-26 23:13:55
    问题描述:对于给定的如下数组,如何转换List集合? String[] array = {"a","b","c"}; 参考stackoverflow总结如下几种写法: 1.使用原生方式,拆分数组,添加到List List<String> resultList = new ...
  • 如何将一个数组转成集合? java.util.Arrays 类为我们提供了一个方法 Arrays.asList(T… a) 此方法可以将数组转换成一个arrayList集合 使用方法: public static void main(String[] args) { String[] array= {...
  • java中我们经常会使用Arrays.asList(数组);将数组转换为List类型,但是却不能对转换后的List进行增删的解释。
  • java中数组快速转成List集合

    万次阅读 2017-12-12 16:41:36
    java中,如果想把一个数组转换成为List集合,我们一般会使用Arrays.asList()方法,代码如下: public class ArrayTest1 { public static void main(String[] args) { String[] arr = {"aa","bb"...
  • Java——数组转换为List集合

    千次阅读 2019-01-10 15:25:38
    package day04; import java.util.ArrayList; import java.util.Arrays;... * 不能转换为Set集合,原因在于Set集合不能存放重复元素 * @author Administrator * */ public class ToListDemo ...
  • java 中将数组转换list的方法

    千次阅读 2019-09-23 17:22:09
    java 中将数组转换list的方法 ...1.将数组转成list的一般方法         2.一般方法的弊端         3.正确的...
  • 字符串数组转换为list集合

    千次阅读 2019-05-14 22:22:13
    // asList 该方法可以直接将一个数组转换为list集合,但是该集合是 [只读的],不能对得到的集合进行增删改 List<String> asList = Arrays.asList(arr); System.out.println(asList); // 结果:[a, C, abc] ...
  • 集合转数组 数组转集合

    千次阅读 2018-08-25 21:33:15
    数组集合转换 数组变字符串 int[] arr = {4,1,8,5,3,5}; System.out.println(Arrays.toString(arr));//[4,1,8,5,3,5] 1、集合转数组 Object[] toArrays() E[] toArrays(E[] e); 有时候 需要让集合围数组,...
  • json数组对像转换java对象集合

    千次阅读 2017-06-23 09:32:25
    * 将json数组解析java对象集合 * @param jsonString * @param clazz * @return */ public static List getDTOArray(String jsonString, Class clazz){ JSONArray array = JSONArray.fromObject(json...
  • 获取前端json数组转成java集合:  //获取前端数据:[object,object,...]  tring assets = request.getParameter("asset_list");  List&lt;String&gt; assetIdStrList = new ArrayList&lt...
  • 演示的是数组集合的方法,及注意事项。 例: int[] num = {1,2,3,4}; Arrays.asList(num) 输出:是数组的地址 Integer[] num = {1,2,3,4}; Arrays.asList(num) 输出:[1,2,3,4] 注意上面的输出区别: 如果数组中的...
  • java8 对象数组转集合的简单操作

    千次阅读 2020-05-12 15:13:39
    java8对象数组转集合的简单操作 java8版本对传统的集合类的简单操作结合拉姆达表达式相比之前版本方便快捷,很大程度减少了代码量。相对数据库而言大大的减少了数据处理数据的压力。部分统计可以转移在程序中处理。...
  • * 注意:将数组变成集合可以使用集合的增删方法,因为数组的长度是固定的 * 如果增删了,那么会发生支持操作异常 */ List<String> list = Arrays.asList(arr); //list.add("qq"); 可用 /* ..
  • 数组集合相互转化

    千次阅读 2018-08-19 22:50:06
    数组Array与集合List相互转化有两种方式,一种是自己手动转化,一种是直接使用集合数组自带的方法转化 数组转化集合: 方法一:手动转化 List&lt;String&gt; list= new ArrayList&lt;&gt;(); ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 310,619
精华内容 124,247
关键字:

数组转成的集合不能add