java数组学习笔记

来源:互联网 发布:罗斯柴尔德 知乎 编辑:程序博客网 时间:2024/04/28 03:49
使用java数组之前需先对数组对象进行初始化,当数组的所有元素都被 
分配到了合适的内存空间,并指定了初始值时,数组初始化完成。 
程序以后不能重新改变数组对象在内存中的位置和大小 

初始化:为数组对象的元素分配内存空间,并为每个数组元素指定初始值 
静态初始化:显式指定每个数组元素的初始值 
动态初始化:只指定数组长度。系统为其分配初始值 

char类型数组的数组元素的初始值 是‘\u0000’ 

不要同时使用静态初始化和动态初始化 

初始化完成,只可改变数组元素的值,无法改变数组的长度 

java的数组变量是一种引用类型的变量,数组变量并不是数组本身,它只是 
指向堆内存中的数组对象 

javascript的动态数组与java的静态数组的区别。动态数组的长度可变 
使用java数组前要先初始化 

java的数组变量是引用类型的变量,它并不是数组对象本身,只要让数组 
变量指向有效的数组对象,程序中即可使用该数组变量 

数组变量只是一个引用变量,通常存放在栈内存中 
数组对象是保存在堆内存中的连续内存空间。 

对数组执行初始化,不是对数组变量执行初始化,而是对数组对象执行初 
始化。 

所有的引用变量都不需要初始化,而要进行初始化的是该引用变量所引用的 
对象 

指定类型的变量只能存储指定类型的值 

所有局部变量都 是放在栈内存中保存,不管是基本类型的变量,还是引用类型 
的变量,都是存储在各自的方法栈区。但引用类型变量所引用的对象,总是 
存储在堆内存中 

堆内存中的对象不允许 直接访问。为了访问,可通过引用变量 
引用变量本质上只是一个指针,只要程序通过引用变量访问属性,或者通过 
引用 变量调用方法,该引用变量将由它所引用的对象代替 

Runtime异常: NullPointerException空指针异常。引用变量未引用 一个有效的对象 
java避免直接访问堆内存中的数据可以保证程序更加健壮。 
如果程序直接访问并修改堆内存中数据,可能破坏内存中的数据完整性。从而导致程序crash 

将多维数组当作一维数组处理 
初始化多维数组时可以先只初始化最左边的维数 

数组的length属性是可以返回系统为该数组分配的连续内存空间的长度 

对于数组变量要区分 它何时为数组变量,何时代表数组对象
原创粉丝点击