Java 数组和集合的区别

目录

相同点

存储元素的区别 : 

长度的区别:

使用选择

相互转换

数组的补充


相同点

集合和数组都是Java中的容器。

存储元素的区别 : 

        1.1,数组既可以存储基本数据类型,又可以存储引用数据类型,基本数据类型存储的是值,引用数据类型存储的是地址值

        1.2,集合只能存储引用数据类型(对象)集合中也可以存储基本数据类型,但是在存储的时候会自动装箱变成对象


长度的区别:

        2.1,数组长度是固定的,不能自动增长

        2.2,集合的长度的是可变的,可以根据元素的增加而增长


使用选择

         3.1,果元素个数是固定的推荐用数组

         3.2,如果元素个数不是固定的推荐用集合

 

相互转换

4.1,集合转数组

Collection中toArray(T[] a)泛型版的集合转数组

4.2,数组转集合

Arrays工具类的asList(T... a) 方法,参数为可变参数

备注:有关可变参数

    定义方法的时候不知道该定义多少个参数

格式

    修饰符 返回值类型 方法名(数据类型…  变量名){}

注意事项:

    这里的变量其实是一个数组

    如果一个方法有可变参数,并且有多个参数,那么,可变参数肯定是最后一个
 

数组的补充

一维数组的创建: 

//有关一维数组的创建有三种方式
数据类型 [] 数组名 = new 数组类型[元素数量]
数据类型 [] 数组名 = {元素1,元素2,....}   //静态初始化
数据类型 [] 数组名 = new 数组类型{元素1,元素2,....}

例如:
String[] a1 = new String[8];
String[] a2 = {"11","12","13", "14", "15"};
String[] a3 = new String[]{"a","b","c","d","e"};

二维数组创建

数据类型 数组名 [][] = new 数据类型[m][n]
数据类型 [][]  数组名 = new 数据类型[m][n]
数据类型 []  数组名 [] = new 数据类型[m][n]

注意:以上数组的创建如果不指定n,回到初始化不成功,如果使用数组,则会抛出空指针;

例如: int [][]  arr=new  int [2][3];  也可以理解为“2行3例”

格式2: 静态初始化

数据类型 [][]   数组名 = {{元素1,元素2,....},{元素1,元素2,....},{元素1,元素2,....},.....};

例如: int [][]  arr={{22,15,32,20,18},{12,21,25,19,33},{14,58,34,24,66},};

 

 

你可能感兴趣的:(Java)