Java数组、集合

目录

一.数组(Array)

1.一维数组

2.多维数组

二.集合(Collection)

1.List

特点:

主要方法:

2.ArrayList

特点:

主要方法:

List与ArrayList的区别:

数组与集合的区别:


一.数组(Array)

数组是一种固定大小的数据结构,用于存储相同类型的数据

1.一维数组

声明数组:

int arr[] = {1,2,3,4,5}    //静态初始化一个数组

int arr[] = new int[5]        //动态声明了一个整形的数组,并分配了五个元素的空间,默认值为0

访问其中的某个元素:

arr[index];    //index为下标(索引)

arr[1];

2.多维数组

二维数组:

声明二维数组:

//声明并静态初始化一个3*3的二位数组
int[][] arr = {
    {1,2,3},
    {4,5,6},
    {7,8,9}
}

int[][] arr = new int[3][3];    //声明并动态创建一个3*3的二维数组并分配空间,默认值都为0

只指定第一维大小:

int[][] arr = new int[3][];    // 第一维大小为3,在后续操作中指定其余大小  
arr[0] = new int[3];    // 为第一行分配3个元素的空间  
arr[1] = new int[2];    // 为第二行分配2个元素的空间  
arr[2] = new int[1];    // 为第三行分配1个元素的空间

访问其中的元素:

int i = arr[1][1];    //访问第二行,第二列的元素

//    (0,0)|(0,1)|(0,2)
//    -------------------------
//    (1,0)|(1,1)|(1,2)
//    -------------------------
//    (2,0)|(2,1)|(2,2)

二.集合(Collection)

集合包含了一系列用于存储和操作数据结构的接口和类

1.List

特点:

  1. 有序性:元素是有序的,按照插入的顺序排列。
  2. 可重复性
  3. 访问方式:可以通过索引访问元素
  4. 动态大小:可以在运行时增大或减小

主要方法:

创建一个ArrayList实例:

List<String> list = new ArrayList<>();

添加元素:

list.add("a");
list.add("b");
list.add("c");

访问其中的某个元素:

list.get(index);    //index为下标(索引)

System.out.println(list.get(1));    //b

修改:

list.set(index,element);    //index为下标,element为元素

list.set(2,"two");

遍历:

for (String list : lists) {  
    System.out.println(list);  
}  

2.ArrayList

ArrayList是一个基于动态数组的数据结构,能够自动调整大小来存储集合中的元素。

特点:

  1. 动态大小:可以根据需要自动调整大小
  2. 随机访问:ArrayList内部使用数组存储元素,可以通过索引快速访问任何元素
  3. 允许空值和重复元素:可以包含null
  4. 线程不安全

主要方法:

创建ArrayList实例:

ArrayList<String> arrLists = new ArrayList<>();

添加元素:

arrLists.add(E e);    //E为数据类型 e为对应类型的元素

arrLists.add("a");
arrLists.add("b");
arrLists.add("c");

该元素会进行下标检查,确保有足够的容量之后,在末尾进行添加

arrLists.add(index,element);    //index为下标,element为元素

arrLists.add(4,"e");

访问其中的某个元素:

arrLists.get(index)    //index为下标
System.out.println(arrLists.get(1));    //输出1

 修改:

arrLists.set(index,element);    arr.set(下标,元素);
arrLists.set(2,"222");

遍历:

for (String arrList: arrLists) {  
    System.out.println(arrList);  
}  

List与ArrayList的区别:

1.List是一个接口,它定义了集合操作的行为,但具体由它的实现类实现。ArrayList是List接口的一个实现类,使用数组存放元素

2.List主要用途在于存储和操作一组有序的元素。ArrayList支持快速的随机访问,但是插入与删除较慢

数组与集合的区别:

1.数组长度固定,集合长度可变

2.数组由于长度固定,访问速度快,集合提供了更灵活的操作方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值