数组

数组定义

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

数组类型【】 数组名 = new 数据类型【元素个数】

要点说明

  • 数据类型: 数组中存储元素的数据类型
  •  [] 表示数组的意思
  • 变量名 自定义标识符
  • new 创建容器关键字
  • 元素个数,就是数组中,可以存储多少个数据 (恒定, 定长)
  • 数组是一个容器: 存储到数组中的每个元素,都有自己的自动编号(索引(index), 下标, 角标)
  • 访问数组存储的元素,必须依赖于索引 数组名[索引]
  • 数组中最小的索引是0,最大的索引是数组的长度-1
  • 数组有一个属性,length。通过数组名.length访问数组长度。

数组两个定义方式

int[] arr = new int[]{1,2,46,6}   此处new后面的中括号不可以写任何内容

直接大括号赋值:

int[] arrr = {3,5,7,31,673,}

 java基础语法day04 随笔 第1张

 

 

JVM内存划分

 

 

JVM对自己的内存进行划分,分为5个区域:

1.寄存器:内存和cpu之间

2.本地方法栈:JVM调用了系统中的功能

3.方法和数据共享:运行时期class文件进入的地方

4.方法栈:所有的方法运行的时候进入的内存

5.堆:存储的是容器和对象

数组的内存图

 

1.ArrayDemo.class先进入方法、数据共享区。 2.main方法进入方法栈,压栈运行。 3.JVM在堆内存,开空间,存储数组容器。 

arr是引用类型,保存的数据实际上是数组的首地址。 

java基础语法day04 随笔 第2张

 

数组遍历

for用于确定的个数

while用于不确定的个数

数组常见的异常

数组的索引越界异常

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3  

第三个元素异常

空指针异常

Exception in thread "main" java.lang.NullPointerException

 

二维数组

定义方式:

第一种 int[][] arr = new int[3][4]

第二种 int[][] arr = new int[3][]

其中一维数组长度没有指定,要new arr[0] = new int[5]; new arr[1] = new int[4]

第三种 Int[][] arr = {{4,6,23,7},{8,67,90,44},{12,6,89,65,6}}  最为简洁

 

案例1

销售求和问题 

 java基础语法day04 随笔 第3张

java基础语法day04 随笔 第4张

 

 

案例2

随机点名器

 

1.存储姓名

2.预览所有人姓名

3.随机出一个人姓名  

java基础语法day04 随笔 第5张

 

java基础语法day04 随笔 第6张

 

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄