A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lxl962189096 中级黑马   /  2016-5-20 13:32  /  407 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.heima.jdk5;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Demo4_AsList {
        /**
         * 数组转换成集合
         * 数组转换成集合虽然不能增加或减少元素,但是可以用集合的思想操作数组,也就是说可以使用其他集合中的方法
         */
        public static void main(String[] args) {
                //demo1();
                //demo2();
                //集合转数组,加泛型的
                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);
                Integer[] arr = {11,22,33,44,55};                                        //将数组转换成集合,数组必须是引用数据类型
                List<Integer> list = Arrays.asList(arr);
                System.out.println(list);
        }
        public static void demo1() {
                String[] arr = {"a","b","c"};
                List<String> list = Arrays.asList(arr);                                //将数组转换成集合
                //list.add("d");                                                                        //不能添加
                System.out.println(list);
        }
}

1 个回复

倒序浏览
一句话总结:将数组转换成集合,数组必须是引用数据类型。语法List<T> list = Arrays.asList(<T>[])T只能是引用类型。集合转数组(集合只能存放引用数据类型)。有个注意点jdk5以后的自动拆装箱功能
List<Integer> list = new ArrayList<Integer>();
//添加元素
list.add(10);//这里的10并不是基本类型。而是引用类型,是JDK5以后的新特性。
list.add(new Integer(20);)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马