Java笔记04

一、数组的概念

数组:一种容器,可以存放多个数据值

数组的特点:
1) 数组是一种引用数据类型
2) 数组中的多个数据,类型必须统一
3) 数组长度在程序运行期间不可避免

二、数组的定义格式

1、数组的初始化

动态初始化(指定长度)
静态初始化(指定内容)

2、动态数组的初始化
数据类型[] 数组名称 = new 数据类型[数组长度]

左侧中括号:代表我是一个数组
左侧数组名称
右侧new:代表创建数组的动作
右侧数据类型:和左边保持一致
右侧中括号中的数组长度:数组当中可以放多少个数据,int

3、静态数组的初始化
数据类型[] 数组名称 =new 数据类型[数组长度] {元素1,元素2,元素3……}

使用静态初始化数组的时候格式还可以省略

数据类型[ ] 数组名称 = {元素1,元素2,元素3……}
注意事项:

1) 静态初始化没有指定长度,但仍然会自动推算长度
2) 数组初始化标准格式可以拆分成两个步骤
3) 静态初始化的省略格式不可以拆分

三、访问数组元素进行获取

直接打印数组名称,得到的是数组对应的内存地址(哈希值)
访问数组元素的格式:

数组名称[索引值]//索引值从0开始,到数组的长度减1

可以直接打印数组中的元素,也可以将数组中单个元素的值赋给变量

四、访问数组元素进行赋值

使用动态初始化数组时,其中一个元素将会自动拥有一个默认值

常见数据类型的默认值

整数类型 0
浮点类型 0.0
字符类型 ‘\u0000’ (不可见字符)
布尔类型 false
引用类型 null

注意事项:
静态初始化其实也有默认值的过程,只不过系统马上将默认值替换成为类大括号中的具体内容

五、Java中的内存划分

java的内存需要划分为5个部分
1、栈(Stack):存放的都是方法中的局部变量
局部变量:方法的参数,或是方法{ }内部的变量
作用域:一旦超出作用域,立刻从栈内存中消失

2、堆(Heap):凡是new出来的东西,都在堆当中
堆当中的东西都有一个地址值(16进制)
堆内存中的数据都有默认值

3、方法区(Method Area):存储.class相关信息,包含方法的信息

4、本地方法栈(Native Method Stack):与操作系统有关

5、寄存器(pc Register):与CPU有关

数组索引越界异常

如果访问数组元素的时候,索引编号并不存在,那么将会发生数组索引异常

数组空指针异常

所用引用类型变量,都可以赋值为一个null值

如果数组只赋值一个null,会发生空指针异常(NullPointerException)

六、获取数组的长度

int[] array={1,2,3,4};
System.out.println(array.length);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值