赞
踩
静态创建:
int[] array = {1,2,3};
动态创建:
int[] array = new int[60];
数组长度
int arrayL = array.length
栈内存(Stack):主要用于执行方法,工厂的生产车间
①临时的
②存储量相对较小的
③存放main()、基本类型变量、引用类型变量、方法函数
堆内存(Heap):用于存储大量数据,工厂的原料仓库
①持久的
②存储量相对较大的
③存放由new创建的对象和数组
java程序执行时,首先将main函数载入栈内存,然后在栈内存中存放基本数据类型创建的变量(如int类型、float类型);而引用类型数据创建的变量存储的过程如下(以Array为例):
注:
for(int i =0;i<array.length;i++){
System.out.println(array[i]);
}
for(int a : arr ){
System.out.println(a);
}
1.数组合并:
int[] arr3 = new int[arr1.length+arr2.length];
//往arr3中添加arr1
for(int i =0;i<arr1.length;i++){
arr3[i]=arr1[i];
}
//往arr3追加arr2
for(int i = 0;i<arr2.length;i++){
arr3[i+arr1.length]=arr2[i];
}
2.往数组中追加元素、插入元素:思路同上,都是创建一个中间数组。(不能直接在原数组中添加,因为长度已经固定)
3.删除元素
Arrays JRE中基本类库提供的一个数组工具类
封装了 排序、查找极值、遍历输出等操作。
int[] arr = {23,5,3,42,45,1,28,32};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
[1, 3, 5, 23, 28, 32, 42, 45]
int[] arr = {23,5,3,42,45,1,28,32};
//1.使用Arrays.binarySearch()需要先排序
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
[1, 3, 5, 23, 28, 32, 42, 45]
//2.在排序后的数组中查询
int index = Arrays.binarySearch(arr,45);
System.out.println("元素在数组中的索引"+index);
元素在数组中的索引7
二分算法查询效率高,思路如下(查找45,如果一个一个比对,需要8次,二分算法3次计算即可):
int[] arr = {23,5,3,42,45,1,28,32};
int[] newArr = Arrays.copyOf(arr,5);
System.out.println(Arrays.toString(newArr));
[23, 5, 3, 42, 45]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。