Java数组详解(java数组操作方法)

createh54个月前 (02-01)技术教程59

数组,也叫Array,是由同一种数据类型按照一定的顺序排列的集合,给这个数组起一个名字。是一种数据类型。

定义数组,在类型的后面加一个[]


定义数组有两种方式

①静态初始化 int[] num=new int[]{1,2,3};

②动态初始化 int[] num=new int[3];


内存情况


数组常见的异常有空指针异常数组越界异常

为什么会产生空指针异常和数组越界异常呢?

因为产生空指针异常的原因是数组的值为空;

因为数组是有长度的,长度的属性叫做length,数组的索引范围是从0开始,到数组的长度-1结束。而产生数组越界异常的原因是因为索引范围大于或者小于数组的长度。



下面用代码来解释:


数组的默认值

整型:byte/short/ing/long 默认值是0

浮点型:float/double 默认值是0.0

字符型:char 默认值是'\u0000'或者空

布尔型:boolean 默认值是false

其他对象:默认值是null


数组的复制分为浅拷贝深拷贝

浅拷贝:把数组的地址赋值给另外一个数组,两个数组共享同一块内存。修改数据会相互影响


深拷贝:两个数组的地址不同,所以改变第一个数组的值,第二个数组的值不会改变。


多维数组

实际上就是一堆数组。





相关文章

Java合并两个数组,以及数组排序并去重

还有其他的方法,这里我列出最简单的方法来实现。1、Java合并两个数组第一种:public static void main(String[] args) { int[] a = ne...

灵魂拷问:如何检查 Java 数组中是否包含某个值?

作者 | 沉默王二责编 | Elle在逛 programcreek 的时候,我发现了一些专注细节但价值连城的主题。比如说:如何检查Java数组中是否包含某个值 ?像这类灵魂拷问的主题,非常值得深入地研...

学习笔记之C#基础——数组和集合(c#数组三种形式)

学习笔记之C#基础——数组和集合 数组是大部分编程语言中都支持的一种数据类型,无论是C语言、C++、C#还是Java。数组是最为常见的一种数据结构,是相同类型的、用一个标识符封装到一起的基本类型数据序...

[JAVA冷知识]什么是逆变与协变?数组是否支持协变&逆变?泛型呢?

写在前面和小伙伴分享一些java小知识点,主要围绕下面几点:什么是逆变(contravariant)&协变(covariant)?数组支持协变&逆变吗?泛型支持协变&逆变吗?部分内容参考 《编写高质量...

C语言字符数组和字符串(c语言 字符串 数组)

用来存放字符的数组称为字符数组,例如:char c[10];字符数组也可以是二维或多维数组。例如:char c[5][10];字符数组也允许在定义时进行初始化,例如:char c[10]={'c',...

JAVA中如何调用matlab并返回运算结果?

在我们的java工程中,如何需要进行大量的数学运算,一般的情况下会直接自己编写.java的运算代码,或者调用已经写好的第三方jar包,或者有的人会使用matlab写好计算方法,再打包成jar包,但是以...