滚雪球学Java(27):从零开始学习数组:定义和初始化

简介: 【5月更文挑战第2天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!

🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!!


前言

数组是一种非常常用的数据结构,在任何一门编程语言中都有其存在。它可以存储一组相同类型的数据,同时能够方便地对这些数据进行操作。

在Java中,数组也是不可或缺的一部分。本文将从定义和初始化开始,逐步讲解Java中数组的相关知识点,帮助读者掌握数组的使用方法。

摘要

本文主要内容包括:

  1. 数组的定义和初始化
  2. 数组的常见操作
  3. 二维数组的使用
  4. 数组的应用场景

Java数组

数组的定义和初始化

在Java中,数组是一个类,需要使用关键字new来创建。数组的定义格式为:

数据类型[] 数组名 = new 数据类型[数组长度];

例如,定义一个存储整数类型数据的数组:

int[] arr = new int[5];

这里定义了一个长度为5的整数类型数组。

另一种定义数组的方式是使用初始化列表:

数据类型[] 数组名 = {
   元素1, 元素2, ..., 元素n};

例如:

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

这里定义了一个包含5个整数元素的数组。

数组的常见操作

  1. 访问数组元素

    可以使用下标来访问数组中的元素,下标从0开始,例如:

   int[] arr = {
   1, 2, 3};
   System.out.println(arr[0]); // 输出1
  1. 修改数组元素

    可以通过下标来修改数组的元素,例如:

   int[] arr = {
   1, 2, 3};
   arr[0] = 5;
   System.out.println(arr[0]); // 输出5
  1. 数组的长度

    可以使用length关键字获取数组的长度,例如:

   int[] arr = {
   1, 2, 3};
   System.out.println(arr.length); // 输出3
  1. 遍历数组

    可以使用循环语句来遍历数组中的元素,例如:

   int[] arr = {
   1, 2, 3};
   for (int i = 0; i < arr.length; i++) {
   
       System.out.println(arr[i]);
   }

二维数组的使用

二维数组是指一个由多个一维数组组成的数组。它的定义和初始化方式如下:

数据类型[][] 数组名 = new 数据类型[行数][列数];

例如,定义一个3行4列的整数类型二维数组:

int[][] arr = new int[3][4];

对于二维数组中的元素访问和修改,需要使用两个下标:

int[][] arr = {
   {
   1, 2}, {
   3, 4}};
System.out.println(arr[0][1]); // 输出2

arr[1][1] = 5;
System.out.println(arr[1][1]); // 输出5

数组的应用场景

数组在开发中有着广泛的应用场景,例如:

  1. 存储多个相同类型的变量
  2. 快速寻找最大/最小值
  3. 用于排序算法
  4. 存储图像/音频等数据

代码方法介绍

定义和初始化数组

定义一个整数类型数组,并使用初始化列表进行初始化:

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

定义一个整数类型数组,并指定数组长度:

int[] arr = new int[5];

访问和修改数组元素

访问数组中的元素:

int[] arr = {
   1, 2, 3};
System.out.println(arr[0]); // 输出1

修改数组中的元素:

int[] arr = {
   1, 2, 3};
arr[0] = 5;
System.out.println(arr[0]); // 输出5

获取数组长度

获取数组的长度:

int[] arr = {
   1, 2, 3};
System.out.println(arr.length); // 输出3

遍历数组

使用循环语句遍历数组中的元素:

int[] arr = {
   1, 2, 3};
for (int i = 0; i < arr.length; i++) {
   
    System.out.println(arr[i]);
}

定义和初始化二维数组

定义一个3行4列的整数类型二维数组,并进行初始化:

int[][] arr = {
   {
   1, 2, 3, 4}, {
   5, 6, 7, 8}, {
   9, 10, 11, 12}};

定义一个3行4列的整数类型二维数组,并指定数组长度:

int[][] arr = new int[3][4];

访问和修改二维数组元素

访问二维数组中的元素:

int[][] arr = {
   {
   1, 2}, {
   3, 4}};
System.out.println(arr[0][1]); // 输出2

修改二维数组中的元素:

int[][] arr = {
   {
   1, 2}, {
   3, 4}};
arr[1][1] = 5;
System.out.println(arr[1][1]); // 输出5

测试用例

测试数组的定义和初始化

int[] arr1 = {
   1, 2, 3, 4, 5};
int[] arr2 = new int[5];

assert arr1.length == 5;
assert arr2.length == 5;

测试数组的访问和修改

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

arr[0] = 5;
assert arr[0] == 5;

测试数组的长度

int[] arr = {
   1, 2, 3};
assert arr.length == 3;

测试数组的遍历

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

for (int i = 0; i < arr.length; i++) {
   
    System.out.println(arr[i]);
}

assert true;

测试二维数组的定义和初始化

int[][] arr = {
   {
   1, 2, 3}, {
   4, 5, 6}, {
   7, 8, 9}};
assert arr.length == 3;
assert arr[0].length == 3;

测试二维数组的访问和修改

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

assert arr[0][1] == 2;

arr[1][1] = 5;
assert arr[1][1] == 5;

小结

  本文介绍了Java中数组的相关知识点,包括定义和初始化、常见操作、二维数组的使用和数组的应用场景等方面。同时,也提供了相应的代码示例和测试用例,帮助读者更好地理解和掌握数组的使用方法。

附录源码

  如上涉及所有源码均已上传同步在Gitee,提供给同学们一对一参考学习,辅助你更迅速的掌握。

总结

  本文主要介绍了Java中数组的相关知识。首先讲解了数组的定义和初始化,包括如何声明数组、如何分配内存空间、如何初始化数组等。然后讲解了数组的常见操作,包括数组的遍历、查找、排序等。接下来介绍了二维数组的使用,包括如何定义、如何初始化以及如何遍历等。最后,本文讲解了数组在实际应用中的场景,如用于存储数据、用于算法计算等方面。阅读本文后,读者可以更好地掌握Java中数组的使用方法。

☀️建议/推荐你


  无论你是计算机专业的学生,还是对编程有兴趣的小伙伴,都建议直接毫无顾忌的学习此专栏「滚雪球学Java」,bug菌郑重承诺,凡是学习此专栏的同学,均能获取到所需的知识和技能,全网最快速入门Java编程,就像滚雪球一样,越滚越大,指数级提升。

目录
相关文章
|
17天前
|
Oracle Java 关系型数据库
java 入门学习视频_2025 最新 java 入门零基础学习视频教程
《Java 21 入门实操指南(2025年版)》提供了Java最新特性的开发指导。首先介绍了JDK 21和IntelliJ IDEA 2025.1的环境配置,包括环境变量设置和预览功能启用。重点讲解了Java 21三大核心特性:虚拟线程简化高并发编程,Record模式优化数据解构,字符串模板提升字符串拼接可读性。最后通过图书管理系统案例,展示如何运用Record定义实体类、使用Stream API进行数据操作,以及结合字符串模板实现控制台交互。该指南完整呈现了从环境搭建到实际项目开发的Java 21全流程实
44 1
|
20天前
|
Java
银行转账p图软件,对公转账截图生成器,java版开发银行模拟器【仅供学习参考】
这是一套简单的银行账户管理系统代码,包含`BankAccount`和`BankSystem`两个核心类。`BankAccount`负责单个账户的管理
|
20天前
|
存储 Java 数据库
银行流水生成器在线制作,银行转账p图在线生成,java实现最牛的生成器【仅供学习用途】
本示例展示了一个基于Java的银行交易记录管理系统基础架构,涵盖交易记录生成、数字签名加密及账本存储功能。核心内容包括:1) TransactionRecord类
|
20天前
|
Java 数据库 数据安全/隐私保护
银行流水生成器在线制作,银行转账p图在线生成,java实现最牛的生成器【仅供学习用途】
本资料探讨银行系统核心技术,涵盖交易记录生成、电子回单加密验真及基于Java的财务管理系统开发。主要内容包括:交易记录实体类设计(不可变性与数字签名)
|
21天前
|
数据采集 搜索推荐 算法
Java 大视界 -- Java 大数据在智能教育学习社区用户互动分析与社区活跃度提升中的应用(274)
本文系统阐述 Java 大数据技术在智能教育学习社区中的深度应用,涵盖数据采集架构、核心分析算法、活跃度提升策略及前沿技术探索,为教育数字化转型提供完整技术解决方案。
|
21天前
|
算法 Java 测试技术
Java 从入门到实战完整学习路径与项目实战指南
本文详细介绍了“Java从入门到实战”的学习路径与应用实例,涵盖基础、进阶、框架工具及项目实战四个阶段。内容包括环境搭建、语法基础、面向对象编程,数据结构与算法、多线程并发、JVM原理,以及Spring框架等核心技术。通过学生管理系统、文件下载器和博客系统等实例,帮助读者将理论应用于实践。最后,提供全链路电商系统的开发方案,涉及前后端技术栈与分布式架构。附代码资源链接,助力成为合格的Java开发者。
47 4
|
28天前
|
存储 安全 Java
Java 基础知识超详细整理总结及学习要点解析
本文全面总结了Java基础知识,涵盖语言特性、语法基础、面向对象编程、集合框架、异常处理等核心内容。文章详细解析了Java的面向对象特性(如类与对象、构造方法、方法重载)、集合框架(如ArrayList、HashMap)、异常分类及处理,并深入探讨JVM内存模型、字符串比较、BigDecimal使用等重要知识点。此外,还提供了实际应用示例,帮助开发者更好地理解和掌握Java编程。代码资源可从文末链接获取。
228 4
|
1月前
|
Java 数据挖掘 调度
Java 多线程创建零基础入门新手指南:从零开始全面学习多线程创建方法
本文从零基础角度出发,深入浅出地讲解Java多线程的创建方式。内容涵盖继承`Thread`类、实现`Runnable`接口、使用`Callable`和`Future`接口以及线程池的创建与管理等核心知识点。通过代码示例与应用场景分析,帮助读者理解每种方式的特点及适用场景,理论结合实践,轻松掌握Java多线程编程 essentials。
84 5
|
1月前
|
Cloud Native Java 程序员
【2025 最新版互联网一线大厂 Java 程序员面试 + 学习指南】覆盖全面面试知识点、实用面试技巧及前沿技术实操内容
本内容涵盖互联网大厂主流技术栈的最新实操指南,包括微服务架构(Spring Cloud Alibaba Nacos、OpenFeign、Spring Cloud Gateway)、容器化与Kubernetes、云原生技术(Istio、Prometheus+Grafana)、高性能开发(Reactor响应式编程、CompletableFuture异步编程)及数据持久化(Redis分布式锁、ShardingSphere分库分表)。通过详细代码示例和操作步骤,帮助开发者掌握核心技术,适用于本地环境搭建与模块功能实践。适合Java程序员学习和面试准备,附带资源链接供深入研究。
54 5
|
1月前
|
缓存 算法 Java
【Java 程序员面试 + 学习指南】覆盖互联网一线大厂 Java 程序员所需面试知识点与技巧
本指南专为Java程序员准备互联网大厂面试而设,涵盖面试知识点与技巧两大部分。知识点包括Java基础(面向对象、集合框架、并发编程)、JVM(内存分区、回收机制、类加载机制)、数据库(MySQL、Redis)、开发框架(Spring、Spring Boot、MyBatis)及其他相关技术(计算机网络、操作系统)。面试技巧涉及简历撰写、项目经验阐述及答题策略,助你全面提升面试成功率。提供资源链接,支持深入学习。
46 4