java神坑系列——Arrays.asList

java神坑系列——第二版 Arrays.asList

数组转list是java程序员经常要用的一个方法,但是这也有一个大坑………………上题

这个输出什么 ,很多人期待是[1, 2, 3,4]  。但是 但是并不是。而报编译错误。

掉坑里了吧!看源码

感觉没错呀!可是此ArrayList非彼ArrayList ,    java.util.Arrays.ArrayList.ArrayList 它是array类的一个内部类!掉坑里了吧!哈哈 ing 坑主你好!

如果想用数组转list还要添加数据的应该这样写

List<String> list = new ArrayList<String>(Arrays.asList(array));

====================================================

时间: 2024-10-31 13:55:04

java神坑系列——Arrays.asList的相关文章

java神坑系列——split

作为java程序员天天都用它,它都是我们的饭碗,但是它的坑实在太多--所以现在想写java神坑系列,今天写第一个坑 string的split方法. split是大家常用的一个方法.但是它有好多坑-- 大家都知道它的参数是正则表达式,正则的特殊符号要转义,如果不转义话,嘿嘿ing---- 大家做个题:如下 System.out.println("a".split(".").length); System.out.println("a".split(

为什么Java里的Arrays.asList不能用add和remove方法?

在平时的开发过程中,我们知道可以将一个Array的对象转化为List.这样的操作,我们只要采用Arrays.asList这个方法就行了.笔者前段时间一直用这个方法,有一天,我发现通过Arrays.asList得到的List无法进行add和remove等操作. 下面是一段很简单的测试代码: public class MainFacade { public static void main(String[] args) { List<Integer> list = Arrays.asList(1,

Java - 一道关于Arrays.asList的题目

题目 有这样一道有趣的题目: final int[] test = new int[]{1,2,3,4}; final Integer[] test2 = new Integer[]{1,2,3,4}; final List list1 = Arrays.asList(test); final List list2 = Arrays.asList(test2); final List list3 = Arrays.asList(1,2,3,4); System.out.println(list1

Java中使用Arrays.asList初始化ArrayList

package xiaoling; import java.util.Arrays; import java.util.ArrayList; import java.util.List; public class ListTest{ public static void main(String[] args){ List<List<Integer>> list = new ArrayList<>(); for (int num=0; num<10; ++num){

Arrays.asList()方法

// Collection<Integer> integers = new ArrayList<Integer>();//(Arrays.asList(1,2,3,4,5)); Collection<Integer> integers = new ArrayList<Integer>(Arrays.asList(1,2,3,4,5));// integers = Arrays.asList(1,2,3,4,5); System.out.println(int

Arrays.asList 为什么不能 add 或者 remove 而 ArrayList 可以

分析如下例子: 1 import java.util.Arrays; 2 import java.util.List; 3 4 5 public class Test { 6 public static void main(String[] args) { 7 Integer[] a = {0,1,2,3,4,5,6}; 8 List<Integer> c = Arrays.asList(a); 9 for (Integer integer : c) { 10 System.out.print

【Java基础】一个有意思的泛型方法Arrays.asList(T... a)

总结 利用Arrays.asList方法返回的List是不允许add和remove的,这种list的长度不可变,因为底层依然是写数组. Arrays.asList的返回值是调用是传入T类型的List,所以传入啥,返回啥的列表 T... a 底层本来就是转换为T[] x的数组,所以如果传入的T是数组,最后的底层参数是二维数组T[][] y. Arrays.asList(T... a)方法的作用 将数组转为集合的方法,返回的是List集合.和Collection的toArray对应,是数组和集合间相

java Arrays.asList的用法

import java.util.Arrays; import java.util.List; /** * * 本类演示了Arrays类中的asList方法 * 通过四个段落来演示,体现出了该方法的相关特性. * * (1) 该方法对于基本数据类型的数组支持并不好,当数组是基本数据类型时不建议使用 * (2) 当使用asList()方法时,数组就和列表链接在一起了. *     当更新其中之一时,另一个将自动获得更新. *     注意:仅仅针对对象数组类型,基本数据类型数组不具备该特性 * (

【转】java.util.Arrays.asList 的用法

DK 1.4对java.util.Arrays.asList的定义,函数参数是Object[].所以,在1.4中asList()并不支持基本类型的数组作参数. JDK 1.5中,java.util.Arrays.asList的定义,函数参数是Varargs, 采用了泛型实现.同时由于autoboxing的支持,使得可以支持对象数组以及基本类型数组. 不过在使用时,当传入基本数据类型的数组时,会出现小问题,会把传入的数组整个当作返回的List中的第一个元素,例如: public static vo