标签:tostring 概述 arrays 改变 arch 返回 堆内存 new 组元
数组本质上是实例,里面的元素是成员变量,因此按实例成员变量的初始化执行,声明只是将变量名放在栈中,new则是在堆内存中开辟新空间并进行默认初始化。多维数组只是一维数组中的元素成为变量指向另外一个数组。对数组的操作大多数已经在工具类Arrays类中,可以直接使用。
数组是相同类型数据的有序集合。
dataType[] arrayRefVar; //首选
datzType arrayRefVar[];
dataType[] arrayRefVar = new arrayRefVar[arraySize];//分配内存空间
从0
开始,范围是[0,length-1]
默认初始化0,0.0,null
数组的长度:arrays.length
长度固定,不可改变
相同类型,包括基本类型,引用类型
数组变量属引用类型,可看成是对象,每个元素可相当于对象的成员变量,java对象在堆中,因此数组对象也在堆中。
int[] num;//在栈中存入num变量
num = new int[10];//在内存堆中开辟空间,将变量指向相应的地址
int[] a = {1,2,3};
int[] a = new int[2];
a[0] = 1;
a[1] = 2;
数组是引用类型,相当于实例对象,其元素相当于成员变量,执行默认初始化。
int[] a = new int[2];//a[0]=0;a[1]=0
int[][] a1 = { { 1, 2, 3 }, { 4, 5, 6 } };
相当于[1][2]两行三列
a1[0]={ 1, 2, 3 };
a1[1]={ 4, 5, 6 };
a1[0][0]=1
int[] a = {1,2,3,5,8888,555};
int[] b = {1,2,3,5,8888,555};
//打印数组
System.out.println(Arrays.toString(a));
//比较数组元素是否相等
System.out.println(Arrays.equals(a,b));
//数组排序
Arrays.sort(a);
System.out.println(Arrays.toString(a));
//数组赋值
Arrays.fill(a,1);
System.out.println(Arrays.toString(a));
//查找数组元素
int index = Arrays.binarySearch(b,5);
System.out.println(index);
int[] a = {1,2,3,4,9,13,5,88,55,6};
int tmp = a[0];
int num = 0;
for (int j = 0; j < a.length-1; j++) {
Boolean flag = true;
for (int i = 0; i < a.length-1-j; i++) {
if (a[i]>a[i+1]){
tmp = a[i];
a[i] = a[i+1];
a[i+1] = tmp;
flag = false;
}
num++;
}
if (flag){
break;
}
}
略
标签:tostring 概述 arrays 改变 arch 返回 堆内存 new 组元
原文地址:https://www.cnblogs.com/marhuman/p/14723006.html