就这次!彻底搞明白Java数组,再也不迷糊了

定义

数组在Java语言中是一种非常重要的数据结构之一,它用来存储固定大小的同类型元素。

两个比较重要的要素就是固定大小和同类型元素。就是说一个数组类型一来就会被定义上大小(长度)和元素的数据类型。一个数组可以理解成一堆某种相同的东西。

语法定义

dataType[] arrayRefVar;

dataType arrayRefVar[];

上面两种数组声明的方式,Java语言中推荐使用第一种。简单明了,直接理解为类型-数组-变量。

初始化创建数组

初始化数组有两种方式,不管是哪种方式,它的核心都是数组的大小固定。

  • 直接初始化

这种初始,也叫做静态初始化。就是一上代码,不管其他的直接搞。直接把需要的值赋值上去。

语法定义:

type[] name = new type[]{};

new type[] 可以省略掉直接初始赋值。
//定义长度为5int[] numbers = new int[5] {1, 2, 3, 4};
// 直接赋值,长度为4int[] nums = {1, 2, 3, 4};
  • 先给定数组长度定义,再赋值初始化

这种初始化,叫动态初始化。是先定义数组的大小,再动态对数组的每个元素赋值

语法定义:

dataType[] arrayRefVar = new dataType[size];


// 定义数组的大小
int size = 4;

// 初始化数组
int[] numbers = new int[size];

// 对每个元素进行赋值
numbers[0] = 1;
numbers[1] = 2;
numbers[2] = 3;
numbers[3] = 4;

// foreach遍历打印元素值
for (int number : numbers) {
    System.out.println(number);
}

// 通过下标展示元素值
for (int i = 0; i < numbers.length; i++) {

    // 读取元素值
    System.out.println(numbers[i]);
}

// 打印结果

1
2
3
4
1
2
3
4

上面对数组每个元素赋值采用是numbers[index] = value; index的范围是0--(数组长度-1)。index称为下标。下标的定义从0开始的。比如我们说数组的第1个元素就是小标为0的元素。

// 对每个元素进行赋值
numbers[0] = 1;

numbers[1] = 2;

numbers[2] = 3;

numbers[3] = 4;

读取元素值同样使用的是numbers[index]。

for (int i = 0; i < numbers.length; i++) {

    // 读取元素值
    System.out.println(numbers[i]);
}

为了方便数组的操作,api提供了java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的。以下是一些常用的功能:

  • 给数组赋值:通过 fill 方法。

  • 对数组排序:通过 sort 方法,按升序。

  • 比较数组:通过 equals 方法比较数组中元素值是否相等。

  • 查找数组元素:通过 binarySearch 方法能对排序好的数组进行二分查找法操作。

这个时候,有朋友可能会有疑问,这么多方法,我怎么记得住。方法多了你记住也会忘啊。我找到了api的中文文档,你用到的时候就可以根据相关的类去查询就行,比如你只需要记住Arrays是对数组相关操作就行。用的时候去查询具体的方法就行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值