第八课、数组

1、一维数组

(1)声明
int arr[];
string[] str;
(2)分配空间
arr=new int[5];
(3)声明同时分配内存
int arr[]=new int[5];
(4)初始化
int arr[]=new int[5]{1,2,3,45,56};
int arr2[]={23,12,2};

2、二维数组

(1)声明
int arr[][];
string[][] str;
(2)分配空间
1)直接为每一维分配空间
arr=new int[2][4];
2)分别为每一维分配空间
arr=new int[2][]
a[0]=new int[2];
a[1]=new int[3]; //分配空间的列数可以不相同。
(3)初始化
int arr[][]={{12,0},{45,12}};

3、二维数组的操作


(1)遍历

System.out.println(“*二维数组****”);
int b[][]=new int[][]{{12,1},{1},{23,23,34,4}};
for (int i = 0; i < b.length; i++) {
for (int j = 0; j < b[i].length; j++) {
System.out.println(b[i][j]);
}
}

这里写图片描述


(2)对数组中的元素进行操作

1)可以直接使用访问数组元素的方式来进行元素值的修改

b[0][1]=90;
for (int i = 0; i < b.length; i++) {
    for (int j = 0; j < b[i].length; j++) {
        System.out.println(b[i][j]);
    }
}

这里写图片描述

2)使用静态函数fill函数
arrays.fill(int[] a,int value)
//将所有元素赋值为value。
array.fill(int[] a,int fromindex,int toindex,int value)
//从索引fromindex到索引toindex(不包含)的元素赋值为value。


(3)排序Arrays.sort(object)

System.out.println("*********排序************");
int arr[]=new int[]{23,12,4,56,4};
Arrays.sort(arr);
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);

这里写图片描述


(4)复制数组
Arrays.copyOf(arr,int newlength)
newlength:新数组的长度。当newlength大于被复制数组时,多余的部分将填充0;
当newlength小于被复制数组时,直接截取即可。
例:

System.out.println("*********排序************");
int arr[]=new int[]{23,12,4,56,4};
int arr2[]=Arrays.copyOf(arr, 7);
for (int i = 0; i < arr2.length; i++) {
    System.out.println(arr2[i]);
}


(5)数组查询


Arrays.binarySearch(object[] a,object key)//不限定范围。
Arrays.binarySearch(object[] a,int fromindex, int toindex,object key)
a:要搜索的数组。
key:要查找的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值