数组——Java成长之路

数组

Hello!CSDN的小伙伴们。
这里是老汉的Java成长之路专栏,感兴趣的话就关注老汉并订阅本系列的专栏一起学习吧。

前言

本期老汉为大家介绍Java中的数组,数组是一种线性结构,其使用的内存空间是连续的,是一个用于存放同类型数据的集合容器。

一、 一维数组

1.数组声明

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

例如:
int[] intArray;
int intArray[];
char[] chArray;
String[] strArray;

2.数组创建

语法格式一:先声明后创建
数据类型[] 数组名
数组名=new 数据类型[数组长度]

例如:
创建一个长度为10的整型数组
int[] intArray;
intArray=new int[10];

语法格式二:声明的同时创建数组
数据类型[] 数组名=new 数据类型[数组长度];

例如:
创建长度为10的整型数组
int[] intArray=new int[10];

3.数组的初始化

声明数组的同时给数组赋值,叫做数组的初始化。
例如:
int[] intArray={1,2,3,4,5,6,7,8,9,10};

解释:数组的长度就是初始化时所给数组元素的个数
注意:除初始化外,其余不可使用arr={};来进行赋值!

4.数组元素的引用

语法格式:
数组名[下标];

例如:
int a={1,2,3,4};
a[0]==1;
a[1]==2;
a[2]==3;
a[3]==4;

注意:下标从0开始,此数组没有a[4],会报错,超出最大范围

5.数组长度

属性length表示数组的长度
格式:数组名.length

例如:
int[] a={1,2,3,4};
a.length=4;

6.数组排序

数组常用的五种排序算法有:选择法排序、冒泡法排序、交换法排序、插入法排序、折半法排序。

解释:关于数组排序方法我们只做个了解,需要小伙伴们自行去查找学习,其中冒泡法排序为最。

7.操作练习

题目:从键盘定义一维数组intArray的个数,循环从键盘输入数据,为一维数组intArray赋值,然后将数组的元素输出

答案示例如下:

public static void main(String[] args) {
        //题目:从键盘定义一维数组intArray的个数,循环从键盘输入数据,为一维数组intArray赋值,然后将数组的元素输出
        int number;//定义一个数决定数组大小
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入数组大小:");//提示语句
        number=sc.nextInt();//键盘输入一个值给number
        int[] intArray=new int[number];//定义数组个数为number,number由键盘输入
        for(int i=0;i< intArray.length;i++){
            System.out.println("请输入第"+(i+1)+"个数:");//提示语句
            intArray[i]=sc.nextInt();//为数组元素逐个赋值
        }
        System.out.println("数组元素为:");//提示语句
        for(int i:intArray){//利用特殊for循环进行输出
            System.out.print(i+"  ");//使用print不换行,将数组于同一行输出
        }
    }

二、二维数组

1.数组声明

语法格式:
数据类型[][] 数组名;
数据类型 数组名[][];
数据类型[] 数组名[];

例如:
int[][] intArray;
float floatArray[][];
double[] doubleArray[];

2.数组创建

语法格式一:先声明后创建
数据类型[][] 数组名
数组名=new 数据类型[行][列]

例如:
创建一个长度为三行三列的整型数组
int[][] intArray;
intArray=new int[3][3];

语法格式二:声明的同时创建数组
数据类型[][] 数组名=new 数据类型[行][列];

例如:
创建一个长度为三行三列的整型数组
int[][] intArray=new int[3][3];

解释:创建数组的时候,可以只指定行数不指定列数,且每行列数都可不同,但绝对不可以只指定列数不指定行数。

3.数组的初始化

声明数组的同时给数组赋值,叫做数组的初始化。
例如:
创建一个长度为三行三列的整型数组
int[][] intArray={{1,2,3},{4,5,6},{7,8,9}};

4.数组元素的引用

与一维数组相似,行列的值都是从0开始
语法格式:
数组名[行][列];

例如:
int[][] a={{1,2},{3,4},{5,6}};
a[0][0]==1;
a[0][1]==2;
a[1][0]==3;
a[1][1]==4;
a[2][0]==5;
a[2][1]==6;

5.数组长度

二维数组同样也可以使用length
例如:
int[][] a={{1,2},{3,4,5},{6,7,8,9}};
a.length=3;
a[0].length=2;
a[1].length=3;

6.操作练习

题目:从键盘定义二维数组intArray的行列,循环从键盘输入数据,为二维数组intArray赋值,然后将数组的元素输出

答案示例如下:

public static void main(String[] args) {
        //题目:从键盘定义二维数组intArray的行列,循环从键盘输入数据,为二维数组intArray赋值,然后将数组的元素输出
        int row,train;//自定义行列,决定二维数组行列大小
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入二维数组的行数:");//提示语句
        row=sc.nextInt();
        int[][] intArray=new int[row][];//定义数组行大小为row,row由用户定义
        for(int i=0;i< intArray.length;i++){
            System.out.println("请输入第"+(i+1)+"行的大小");//提示语句
            train=sc.nextInt();
            intArray[i]=new int[train];//定义数组每一行的大小为train,train由用户定义
        }
        for(int i=0;i<intArray.length;i++){
            for(int j=0;j<intArray[i].length;j++){
                System.out.print("intArray["+i+"]["+j+"]=");//提示语句
                intArray[i][j]=sc.nextInt();//为数组每一个元素赋值
            }
        }
        System.out.println("数组元素为");//提示语句
        for(int i=0;i<intArray.length;i++){
            for(int j=0;j<intArray[i].length;j++){
                System.out.print(intArray[i][j]+"  ");
            }
        }
    }

本期小结

到这里我们就结束了本期关于数组的学习,本期知识较为基础,与c语言的数组有较大区别,需要多次观看并加以练习,有助于我们对数组的掌握。最后,老汉在这里祝愿有心人,心想事成,感谢各位观看。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王老汉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值