java基础语法(3)数组

文章目录

数组

程序是用来处理数据的。比如:变量,数组,二维数组,对象,集合...

数组是什么

数组是一个数据容器,可用来存储一批同类型的数据。

如何定义数组

java 复制代码
// 静态初始化数组,定义时已经确定了数据
数据类型[] 数组名 = { 元素1,元素2 ,元素3,... }; 
int[] arr = {12, 24, 36};
// 完整格式
数据类型[]  数组名 = new 数据类型[]{元素1,元素2 ,元素3... };
int[] arr = new int[]{12, 24, 36}

注意: "数据类型[] 数组名"也可写成 "数据类型 数组名[] "

数组的访问

java 复制代码
int[] arr = new int[]{12, 24, 36};
// 数组名[索引]
System.out.println(arr[0]); // 12 
System.out.println(arr[1]); // 24
arr[1] = 100;

// 获取数组的长度(就是数组元素的个数)
System.out.println(arr.length); // 3

数组的另一种定义方式

定义数组时先不存入具体的元素值,只确定数组存储的数据类型和数组的长度

java 复制代码
数据类型[]  数组名 = new 数据类型[长度];
int[] arr = new int[3];

动态初始化数组元素默认值规则:

数据类型 明细 默认值
基本类型 byte、short、char、int、long 0
float、double 0.0
boolean false
引用类型 类、接口、数组、String null

数组的遍历

什么是遍历?

答:就是一个一个数据的访问。

为什么要遍历数组?怎么遍历?

java 复制代码
int[] arr = {20, 30, 40, 50};
for (int i = 0; i < arr.length; i++) {
   	System.out.println(arr[i]);
}

二维数组

二维数组是什么

数组中的每个元素都是一个一维数组,这个数组就是二维数组。

静态初始化

java 复制代码
数据类型[][]  数组名 = new 数据类型[][]{元素1, 元素2, 元素3, ...};
int[][] arr = new int[][]{ {12, 24, 36} , {666, 888} , {10, 20, 30} , {999} };

动态初始化

java 复制代码
数据类型[][]  数组名 = new 数据类型[长度1][长度2];
int[][] arr = new int[3][5];
int[][] arr = new int[][]{ 
  {0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0}, 
  {0, 0, 0, 0, 0} 
};

二维数组的访问

java 复制代码
int[][] arr = new int[][]{ {12, 24, 36} , {666, 888} , {10, 20, 30} , {999} };
数组名称[行索引]
示例1: arr[2]
数组名称[行索引] [列索引]
示例2: arr[2][1] 
示例3:arr[3][0] = 111

二维数组的遍历

java 复制代码
for (int i = 0; i < arr.length; i++) {
  	for (int j = 0; j < arr[i].length; j++) {
     	int data = arr[i][j];
       	System.out.print(data + "\t");
 	}
        System.out.println();
}
相关推荐
光军oi29 分钟前
全栈开发杂谈————关于websocket若干问题的大讨论
java·websocket·apache
weixin_4196583144 分钟前
Spring 的统一功能
java·后端·spring
Paul_09201 小时前
golang面经——map模块和sync.Map模块
开发语言
小许学java1 小时前
Spring AI-流式编程
java·后端·spring·sse·spring ai
Univin1 小时前
C++(10.5)
开发语言·c++·算法
haogexiaole2 小时前
Java高并发常见架构、处理方式、api调优
java·开发语言·架构
张人玉2 小时前
C# 通讯关键类的API
开发语言·c#
EnCi Zheng2 小时前
@ResponseStatus 注解详解
java·spring boot·后端
froginwe112 小时前
R 数组:深入解析与高效使用
开发语言
tao3556672 小时前
【Python刷力扣hot100】283. Move Zeroes
开发语言·python·leetcode