java基础语法day04

数组

数组定义

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

要点说明

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

数组两个定义方式

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

直接大括号赋值:

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

 

 

 

JVM内存划分

 

 

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

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

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

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

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

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

数组的内存图

 

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

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

 

数组遍历

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

销售求和问题 

 

 

 

案例2

随机点名器

 

1.存储姓名

2.预览所有人姓名

3.随机出一个人姓名  

 

 

 

posted on 2019-04-10 20:06  gqyann  阅读(140)  评论(0)    收藏  举报