数组
一维数组
数组:可以看成是多个相同类型数据的组合,实现对这些数据的同一管理
数组中的元素可以是任意数据类型。
数组中的所有元素保存再堆内存中
创建数组的三种方法:如不加值,默认为0
- int[] a =new int[5];
- int[] a = new int[]{1.2.3.4.5};
- int[] a = {1.2.3.4.5}
数组的索引从0开始。
常见异常:数组越界异常( ArrayIndexOutOfBoundsException),添加的元素大于定于的元素个数。
数组遍历应用for循环
- 就是数组的数组
- 创建多维数组:
int a[ ][ ] = { {1,2,3}, {4,5}, {7} } ;
int a[ ][ ] = new int[ ][ ]{ {1,2,3}, {4,5}, {7} }
注意:行数必须定义
a = new int [3][4] ;
a = new int [3][ ] ;
a = new int [ ][4] ; //非法 - 多维数组的遍历:
int a[][] = {{1,2,3},{2,3,4}};
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.println(a[i][j]);
}
}
- 复制
复制source数组中从下标srcPos开始的length个元素到目标数组dest,
并从目标数组的下标为destPos的位置开始储存
? source: 源数组
? srcPos: 源数组中的起始位置
? dest: 目标数组
? destPos:目标数组中的起始位置
? length: 要复制的数组元素的个数
- 排序
Arrays.sort(arr_name)
Arrays.sort(arr_name,fromIndex,toIndex)
对数组arr_name中,从下标为fromIndex到toIndex的元素(不包括
toIndex)进行升序排序
2.冒泡排序
简单的排序方法,一次比较两个元素,依次比较
int a[] = {4,7,5,1,6,2};
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a.length-1; j++) {
if (a[j]>a[j+1]) { int x = a[j] ; a[j] = a[j+1] ; a[j+1] = x ; }
}
}
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
推荐阅读
- 数组常用方法一
- Java|Java基础——数组
- JS常见数组操作补充
- JS|JS 数组求和与数组求平均值
- 超帅的js数组去重
- JavaScript|JavaScript — 初识数组、数组字面量和方法、forEach、数组的遍历
- JavaScript判断数组的方法总结与推荐
- 一些非常有用的snippets
- [leetcode数组系列]1两数之和
- 零长度数组与柔性数组