java数组
数组是什么呢?
数组是一种最简单的复合数据类型,它是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和不同的下标来唯一确定数组中的元素。根据数组的维度,可以将其分为一维数组、二维数组和多维数组等。
java数组的定义有两种方法
第一个:静态
数据类型[] 变量名 = new 数据类型[]{数组的内容};这是静态定义的标准写法,也可以像这样简写
数据类型[] 变量名 = {数组内容},下面来看看实际代码
定义一个int类型的数组 array
int[] array = new int[]{1,2,3};
int[] array = {1,2,3};
第二个:动态
数据类型[] 变量名 = new 数据类型[数组长度],动态没有元素,但是有默认值;这个默认值就是0以及0对应的数据类型的值,比如说对应的int类型那么就是0,再比如char类型的,那么就是对应的字符串,但是这个是打印不出来的;
定义一个String类型的数组 StringArray 数组长度是6
String[] StringArray = new String[6]
那么怎么打印出来?怎么存入新的内容?
在这里做个普及,数组的内容都存在堆内存中的,而数组的变量名是在栈内存中,两个之间的链接呢是栈内存中的变量存的引用(地址),所以数组的内容写好以后是不能再添加新的内容的,但是可以更换
数组打印的方法
for循环+索引方法:
//静态
int[] array = {1,2,3};
int index = 0;
for(int i = 0;i<array.length;i++){
index[i]=array[i];
}
//动态
int[] Dtarray = new int[6]
int x = 0;
for(int i = 0; i<Dtarray.length;i){
x[i] = Dtarray[i];
}
在jdk1.5版本之后出现了一个增强版的for,下面是增强版的for方法
for(定义的变量名:数组变量名){
主方法
}
增强for的方法:
int[] array = {1,2,3};
for(int v: array){
System.out.println(v);//这里直接输出了
}
//动态也是这样写,这里我就不写了
更换内容(更新内容)
这个比较简单,就是每个对应的位置做跟换,和基本数据类型的更换相同,请看下面代码
//两个数组互换内容
int[] a = {1,2,3}
int[] b = {4,5,6}
//定义一个新的空间
int[] c = new int[a.length];
a = c;//把a空间的引用给c空间
b = a;//把b空间的引用给a空间
c = b;//把c空间的引用给b空间
大家在写代码的同时要多去思考,方法还有好多,不光我写的这些