Java学习----数组的使用

数组概述:

定义:数组是一类具有相同数据类型元素的集合,可以用来存储具有固定大小长度的一类相同类型的元素。

使用目的:就是用来一次性声明大量相同类型的元素,便于操作相同类型的数据,用于批量数据操作。


数组应用形式:


语法格式:    数据类型[]   变量名

数据类型:byte、short、int、long、float、double、char、String(常用的有String、int、char)

例如:String[] strs(表示声明了一个String类型的变量名为strs的一个数组)     

           int[] ints(表示声明了一个int类型的变量名为ints的一个数组)


数组初始化:静态初始化和动态初始化

动态初始化: 在声明定义数组时,直接手动固定数组的长度

格式:数据类型[] 变量名=new 数据类型[n];//n为具体长度

方式一:int[] ints;//先声明

               ints=new int[5];//后固定数组长度

方式二; int[] ints=new int[5];//直接声明固定数组长度

静态初始化:在声明定义数组时,不给定具体的数组长度,数组的长度由系统分配。

格式:数据类型[] 变量名=new 数据类型[]{值1,值2...值n};

方式一:int[] arr=new int[]{1,2,3};

方式二:int[] arr={1,2,3};

--------------------------------------------------------------------------------------------------------

数组使用的注意事项:

①使用之前必须初始化

②数组固定的长度不可变

③数组如果直接输出变量名,所显示的是数组的地址值

④数组下标越界(ArrayIndexOutOfBoundsException)和空指针异常(NullPointerException)。

⑤数组的取值是根据数组对应的下标进行取值(数组下标从0开始,也就是说下标为0所对应的值为数组的第一个值)

常用数组类型:主要有 int、String、char类型

int类型数组默认值为0,String类型默认值为null, char类型默认值为空

public class Test05 {
    public static void main(String[] args) {
        int[] ints =new int[2];
        System.out.println("int类型数组默认值为:"+ints[0]);
        String[] strs =new String[2];
        System.out.println("String类型数组默认值为:"+strs[0]);
        char[] chars =new char[2];
        System.out.println("char类型数组默认值为:"+chars[0]);
    }
}

结果:
int类型数组默认值为:0
String类型数组默认值为:null
char类型数组默认值为: 

数组的内存结构:

 

数组的操作:

①基本操作:基本操作就是通过下标(索引)去获取值、对数组进行一系列的赋值操作,循环遍历数组,输出对应值。

int[] ints = new int[]{1, 2, 3};//长度为3的整型数组 下标值为:0、1、2
System.out.println(ints[0]);//取数组索引为0的元素---->1
ints[0] = 4;//对ints数组下标为0的值进行更改为4
System.out.println(ints[0]);//输出结果:4
for (int i = 0; i < ints.length; i++) {
     System.out.print(ints[i]+" ");//循环遍历数组中的值--->输出结果为:4 2 3
}

②复杂操作:数组中有一些方法可以使用length()、Arrays.sort()、Arrays.toString()、Arrays.binarySearch()

int[] ints = new int[]{1, 6, 2};
System.out.println(ints.length);//length()方法输出数组的长度
Arrays.sort(ints);//Arrays类中的sort(数组名)方法对数组进行排序
System.out.println(Arrays.toString(ints));//Arrays类中的toString(数组名)方法输出数组
int index = Arrays.binarySearch(ints,2);//返回ints数组中值为2的索引
System.out.println(index);//输出index索引

结果:
3
[1, 2, 6]
1

此外,还可以利用数组进行求和、求数组中的最大值、最小值、插入数据、删除数据等一系列操作,看开发需求工作,写出相应的代码逻辑。


上面说的是一维数组,还有二维数组、三维数组........

数组是为了一次性声明大量相同数据类型的数据。然后进行操作。

二维数组:

①语法格式:数据类型[][] 变量名;

比如:      int[][] arr;  String[][] strs;

②语法相关声明与一维数组相似,也分为静态初始化和动态初始化

动态初始化:int[][] arr=new int[长度][长度可以不给];

静态初始化:int[][] arr=new int[][]{{1,2,3},new int[]{4,5,6}};
                      int[][] arr={{1,2,3},new int[]{4,5,6}};

③操作:

比如:数组遍历、取值、查找对应索引、数据排序、查找最大值最小值.........

大多和一维数组逻辑思维一致,用解决一维数组数据的方法解决二维数组,同样适用。这里就不展开表示了,小伙伴们自行操作。

④一维数组与二维数组的区别:

二维数组:数组里的每一个元素都是一个一维数组的数组被称为二维数组。

怎么理解呢?看一下代码:

int[][] ints ={{1,2,3},{4,5,6},{7,8,9}};
for (int i = 0; i < ints.length; i++) {
    for (int j = 0; j < ints[i].length; j++) {
        System.out.print(ints[i][j]+" ");
    }
    System.out.println();
}

结果:
1 2 3 
4 5 6 
7 8 9 

其实就是将{1,2,3}、{4,5,6}、{7,8,9}各自看成一个数组:

int[] ints1 = {1,2,3};
int[] ints2 = {4,5,6};
int[] ints3 = {7,8,9};
int[][] ints ={{1,2,3},{4,5,6},{7,8,9}};//进行综合定义

二维数组也有一些方法操作,其实和一维数组大致都一样,所以没什么可说,如有需要,看其他博主。

推荐:java数组的定义和使用_你的酒窝里有酒的博客-CSDN博客_java数组的定义和使用

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值