05 Java数组

数组概论

  1. 数组是相同类型数据的有序集合。
  2. 它由相同类型的若干数据按一定先后次序排列组合而成。
  3. 其中每个数据叫数组元素,可通过下标来访问这些元素。

数组声明创建

  1. 要使用数组,得先声明数组变量,有两种语法:

    dataType[] arrayRefVar;	// 首选的方法
    或
    dataType arrayRefVar[];	// 效果相同,但不是首选方法
    
  2. Java 用new操作符创建数组,语法如下:

    dataType[] arrayRefVar = new dataType[arraySize];
    
  3. 数组元素通过索引访问,索引从 0 开始。

  4. 获取数组长度用:arrays.length


三种初始化

  • 静态初始化
// 创建 + 赋值
int[] a = {1,2,3};
Man[] mans = {new Man(1,1),new Man(2,2)};
  • 动态初始化
// 声明 + 初始化 + 赋值
int[] a = new int[2];
a[0] = 1;
a[1] = 2;
  • 数组默认初始化

数组是引用类型,其元素如同类的实例变量,因此数组一经分配空间,其每个元素会像实例变量那样被隐式初始化(即数组创建后会默认初始化值)。


数组的四个基本特点

  1. 数组长度确定,创建后大小不可变。
  2. 元素必须是相同类型,不能混合。
  3. 元素可为任何数据类型,包括基本类型和引用类型。
  4. 数组变量是引用类型,数组可看成对象,元素相当于对象成员变量,数组本身是对象,在 Java 中对象在堆中,所以数组无论存什么类型,数组对象本身都在堆中。

数组边界

  • 下标的合法区间:[0, length-1],如果越界就会报错。ArrayIndexOutOfBoundsException

数组使用

  • For-Each 循环
  • 数组作方法入参
  • 数组作返回值

多维数组

多维数组可以看成是数组的数组,比如二维数组就是特殊的一维数组,其每个元素都是一维数组。

int[][] a = new int[2][5];  // 两行五列的数组
a[1][0];
int[][] array = {{1,2},{3,4},{5,6}}

Arrays 类

  1. 数组的工具类是java.util.Arrays
  2. 数组对象本身没太多可调用方法,API 提供Arrays工具类供基本操作。
  3. 查看 JDK 帮助文档。
  4. Arrays类方法是static修饰的静态方法,使用时直接用类名调用,不用对象调用。
  5. 常用功能:
    • fill方法给数组赋值。
    • sort方法对数组升序排序。
    • equals方法比较数组元素值是否相等。
    • binarySearch方法对排序好的数组进行二分查找。

稀疏数组

  1. 当数组大部分元素为 0 或同一值时,可用稀疏数组保存。
  2. 稀疏数组处理方式:
    • 记录数组的行数、列数及不同值的个数。
    • 将不同值的元素及其行列和值记录在小规模数组中,以缩小程序规模。
  3. 如下图,左边是原始数组,右边是稀疏数组。


posted @   没关系都是……  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示