Java中的数组——创建及使用

Java中的数组——创建及使用

前言
在开始学习数组之前,我们先来一起了解一下数组。
在Java中,数组是具有相同数据类型的一组数据的集合。在程序设计中,可以将这些集合称之为数字。数组中的元素具有相同的数据类型。在Java中数组也可以看做为一个对象,虽然基本数据类型不是对象,但是由基本数据类型组成的数组却是对象。在程序设计中引入数组可以更加有效的管理和处理数据,也可以根据数组的维数将数组进行划分。
一起来!!!(若此文有任何错误观点,望路过的大佬斧正,感激不尽)


一、数组的概念

数组由同一类型的对象或者基本数据组成,并封装在同一一个标识符(数组名称)下。

  • 数组是对象
    • 动态初始化
    • 可以赋值给Object类型的变量
    • 在数组中可以调用类Object的所有方法
    • 二每个数组都有一 个由public final修饰的成员变量: length,即数组含有元素 的个数( length可以是正数或零)
  • ·数组元素
    • 数组中的变量被称作数组的元素
    • 元素没有名字,通过数组名字和非负整数下标值引用数组元素

二、一维数组

一维数组实质上是一组同类型的数据的线性集合。假设在程序需要处理一组数据,或者传递一组数据时,可以应用这种类型的数组。

1.1创建一维数组

数组作为对象允许使用关键字“new”进行内存分配,在使用数组前必须首先定义数组变量所属的类型。创建一维数组有两种形式,分别为:先声明,再用new关键字进行内存分配;声明数组的同时为数组分配内存。
1.先声明,在使用new关键字进行内存分配
数组的元素类型决定了数组的数据类型。他可以是Java中的任意数据类型,包括简单类型和组合类型。数组的名字为一个合法的标识符。符号“[]”指明该变量是一个数组的类型变量。单个“[]”表示要创建的数组是一个一维数组。
两种方式,语法:

数组元素类型 数组名字[];
数组元素类型[] 数组名字;

代码示例:

int arr[];		//声明一个int型的数组,数组中的每个元素都是int类型的数值
String[] str;	//声明一个String型的数组,每个元素都是String类型的数值

数组被声明后还不可以立即访问它的任何元素,因为声明数组只是给出了数组名字和元素的数据类型。想要真正的使用数组,还要为它分配内存空间。在为数组分配内存空间时必须指明数组的长度。并且数组是通过下标来区分数组中的不同元素,例如长度为5的数组,其中元素的下标为0~4。

为数组分配内存空间的语法格式如下:

数组名字 = new 数组中元素的数据类型[数组元素的个数];

各部分含义:

  • 数组名字:被连接到数组变量的名称
  • 数组中元素的数据类型:Java中的数据类型
  • 数组元素的个数:指定数组中变量的个数,即数组的长度
  • 使用new关键字为数组分配内存时,整型数组中各个元素的初始值都为0

代码示例:

arr = new int[];	//创建一个长度为5(5个元素)的整型数组,引用变量arr引用这个数组

一维数组的内存分配模式:
在这里插入图片描述
2.声明数组的同时为数组分配内存
这种方法诗经数组的声明和内存的分配结合在一起执行。
语法:

数组元素的类型 数组名 = new 数组元素的类型[数组元素的个数];

这种创建数组的方法是开发Java程序过程中普遍的做法。
代码示例:

int money = new int[5];	//创建数组money,并指定了数组长度为5

1.2初始化一维数组

数组与基本数据类型一样,都可以进行初始化操作。数组的初始化可分别初始化数组中的每个元素。
两种形式(语法):

int arr[] = new int{1,3,5,7};
int arr2[] = {2,4,6,8};

数组的初始化就是包括在大括号之内的表达式列表,各个元素之间用逗号隔开,系统自动为数组分配一定的空间。

1.3使用一维数组

在Java集合中一维数组是常见的一种数据结构。安排一段代码,一起来理解一下。
代码示例:

public class Test23 {           //创建类
    public static void main(String[] args) {        //主方法
        //创建并舒适话一个int型的一维数组
        int day[] = new int[]{31,28,30,31,30,31,31,31,30,31,30,31};
        for (int i = 0; i < 12; i++) {                  //for循环
            System.out.println("\t" + (i+1) + "月有" + day[i] + "天");
            System.out.println("---------------------------------");        //输出信息
        }
    }
}

运行结果:
在这里插入图片描述


三、二维数组

若一个数组中的所有元素都是数组,那么这个这个元素均为数组的数组就是二维数组。
二维数组常用于表示表,中的信息以行和列的形式组织,第一个下标代表元素所在的行,第二个下表代表元素所在的列。二维数组可以看做是特殊的一维数组。

3.1创建二维数组

创建二维数组和创建一维数组一样,都有两种形式。分别为:先声明,再用new关键字进行内存分配;声明数组的同时为数组分配内存。
1.先声明,再使用new关键字进行内存分配
语法:

数组元素的类型 数组名字[][];
数组元素的类型[][] 数组名字;

代码示例:

int arr[][];

对于高维数组,有两种为数组分配内存的方式:
(1)直接为每一维分配内存空间
代码示例:

//创建了一个名为arr的二维数组,其中包括两个长度为4的一维数组。
arr = new int[2][4];

二维数组的内存分配方式一:
在这里插入图片描述
(2)分别为每一维分配内存空间
代码示例:

arr = new [2][];
arr[0] = new int[2];
arr[1] = new int[4];

2.声明数组的同时为数组分配内存
第二种方式同第一种实现功能相同,使用这种方式为二维数组分配内存时,首先指定最左边维数的内存,然后单独地给余下的维数分配内存。

二维数组的内存分配方式二:
在这里插入图片描述

3.2二维数组初始化

与一维数组的初始化类似,也可以用大括号来完成
语法:

type name[][] = {value1,value2,...,value};

各部分含义:

  • type:数组的数据类型
  • name:数组名称,一个合法的标识符
  • value:数组中各个元素的值

代码示例:

int arr[][] = {{1,3},{2,4}};

2.3使用二维数组

二维数组在实际的开发中的应用也比较广泛,安排一段代码一起来来感受一下
代码示例:

public class Test24 {               //创建类
    public static void main(String[] args) {        //主方法
        int arr[][] = new int[3][4];            //定义二维数组
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[i].length; j++) {       //循环遍历数组中的每一个元素
                System.out.print(arr[i][j]);                //将数组的元素输出
            }
            System.out.println();               //空格
        }
    }
}

运行结果:
在这里插入图片描述
对于整型二维数组,创建成功后系统会默认赋值给数组中每个元素初始值为0。


希望有所帮助!!!
关注我持续更新!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

7旅病娘

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

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

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

打赏作者

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

抵扣说明:

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

余额充值