04、数组

本文详细介绍了Java中数组的概念,包括一维数组的定义、静态和动态初始化方法,以及二维数组的应用场景、初始化方式和内存布局。同时涵盖了Java内存管理中的栈、堆、方法区和本地方法栈的区别。
摘要由CSDN通过智能技术生成

四、数组

介绍

数组指的是一种容器,可以用来存储同种数据类型的多个值

数组容器在存储数据的时候,需要结合隐式转换考虑

建议:容器的类型,和存储的数据类型保持一致

一维数组

数组的定义

1.
数据类型[] 数组名
int[] array
int[] array = new int {1,2,3}
int[] array = {1,2,3}

2.
数据类型 数组名[]
int array[]
int array[]= new int {1,2,3}
int array[]= {1,2,3}

数组的静态初始化:就是在内存中,为数组开辟空间,并将数据存入容器的过程

扩展:地址值的格式含义

​ 1:对象类型

​ 2:表示该对象内数据的类型(可无)

​ 3:@ 表示一个捡个符号(固定格式)

​ 4:对象地址值(十六进制)

​ 通常情况下我们把整体叫做地址值

数组元素的访问

数组名[索引]

索引:也叫做下标,或角标。

​ 特点:从0开始,逐个+1,连续不断

遍历

将数组中的所有内容取出来,取出来之后可以进行 打印,求和, 判断等操作

使用length属性获得数组的长度

int arr[]={1,135,15,1,1916,12,15,135,15,31,1,351,31,2,11,61,56};
for(int i = 0 ;i< arr.length;i++){
    System.out.println(arr[i])
}

动态初始化

初始化时只指定数组的长度,有系统为数组分配初始值。

格式:
数据类型[] 数组名 = new 数据类型[数组长度]int[] arr = new int[3];

数组默认初始化值的规律:

int:null

flat:0.0

double:0.0

char:‘u0000’ 空格

boolean:false

引用数据类型:null

Java 内存分配

栈:方法运行时使用的内存,比如main方法运行,进入方法栈中执行

堆:存储对象或数组,new来创建的,都存储在堆内存

方法区:存储可以运行的class文件

本地方法栈:JVM在使用操作系统功能的时候使用,与我们开发无关

寄存器:给CPU使用,与我们开发无关

二维数组

应用场景

当我们需要把数据分组管理的时候,就需要用到二维数组

初始化

静态初始化:
	数据类型[][] 数组名= new 数据类型[][]{{元素1,元素二}{元素1,元素二}......}int[][] arr = new int[][]{{1,2},{3,4},{5,6}......};  
简化格式:
	数据类型[][] 数组名= {{元素1,元素二}{元素1,元素二}{元素1,元素二}......}
	int[][] arr = {{1,2},{3,4},{5,6}......};  
	int arr[][]  = {{1,2},{3,4},{5,6}......};
遍历:
	int arr[][]  = {{1,2},{3,4},{5,6}};
	for(int i = 0 ; i< arr.length;i++){
        for(int j = 0 ; j< arr[i].length;j++){
            System.out.print(arr[i][j])
        }
        System.out.println();
    }

动态初始化:
	数据类型[][] 数组名= new 数据类型[m][n]
	m表示这个二维数组,可以存放多少个一维数组
	n表示每一个一维数组,可以存放多少个元素
	int[][] arr = new int[2][3]

二维数组的内存图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jack丶空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值