【Java学习】数组

以前学数组,总是学的稀里糊涂,对数组的生成以及对数组内存储数的查找并不明白是怎么一回事。

最近温习Java的数组操作,对数组也有了一点更深的认识。

先来看一段程序:

1
2
3
4
5
6
7
8
9
10
11
12
public class WhatIsArray {
public static void main(String[] args) {

int[] book = new int[100];

book[0] = 3;
System.out.println(book[0]);

book = new int[3];
System.out.println(book[0]);
}
}

计算机生成数组的过程如下:

  1. 计算机在内存中找到一个地址并将这个地址取值为book。
  2. 计算机在内存中找到能放下int[100]的地方,并记录数组首地址。
  3. 计算机将int[]首地址记录到book那一页。

计算机查找数组中的元素过程如下:

  1. 计算机找到book的地址。
  2. 在book中查找数组book[0]首地址。
  3. 将首地址加上数组的下标,找到要找的值。

由此可以看出为什么数组下标是从“0”开始的,因为这样计算机查找的时候就直接加上下标数就行了,免去了一次减法的操作。

这种数据类型需要分两步查找,所以在Java中,这种数据类型不是Java的基本数据类型。


【Java学习】数组
http://liuminxuan.github.io/2020/01/21/Java学习笔记:数组/
发布于
2020年1月21日
许可协议