Java 数组详解
来源:互联网 发布:网络法律法规赌博 编辑:程序博客网 时间:2024/05/18 08:04
1、概要
数组就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。
组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。
2、初始化数组
//2.1 动态初始化int[] array = new int[3];// 两种方式都可以// int array[] = new int[3];array[0] = 1;array[1] = 2;array[2] = 3; System.out.println(array[0]);//2.2 静态初始化int[] array = { 1, 2, 3, 4 };int[] array1 = new int[] { 1, 2, 3, 4 };System.out.println(array[2]);System.out.println(array1[2]);//2.3 默认初始化int[] array = new int[4];System.out.println(array[2]);
3、获取数组的长度
int[] array = new int[10];int length = array.length;System.out.println("数组array的长度是:" + length);
4、二维数组
//4.1 二维数组初始化//同一维数组一样,共有4总不同形式的定义方法:int[][] array1 = new int[10][10];int array2[][] = new int[10][10];int array3[][] = { { 1, 1, 1 }, { 2, 2, 2 } };int array4[][] = new int[][] { { 1, 1, 1 }, { 2, 2, 2 } };//4.2 不定长二维数组int[][] array = new int[3][];array[0] = new int[1];array[1] = new int[2];array[2] = new int[3];//4.3 获取二维数组的长度int length1 = array.length;int length2 = array[0].length;// 获取二维数组的第一维长度(3)System.out.println(length1);// 获取二维数组的第一维的第一个数组长度(1)System.out.println(length2);
5、 数组遍历
/*5.1 传统方式遍历*/int[] array = new int[] { 1, 2, 3 };for (int i = 0; i < array.length; i++) { System.out.println("array[" + i + "] = " + array[i]);}/*5.2 增强for循环方式遍历*/int[] array = new int[] { 1, 2, 3 };for (int i : array) { System.out.println(i);}
6、数组排序
int[] array = { 3, 2, 1, 4, 5 };Arrays.sort(array);System.out.println(Arrays.toString(array));//另:常用的排序方法有冒泡排序、快速排序、选择排序、插入排序、希尔(Shell)排序、堆排序。可参考Java 数组排序
7、实用API
/*7.1 输出数组*/int[] array = { 1, 2, 3 };System.out.println(Arrays.toString(array));/*7.2 数组转List*/String[] array = { "a", "b", "c", "d", "e" };List<String> list = new ArrayList<String>(Arrays.asList(array));System.out.println(list);/*7.3 数组转Set*/String[] array = { "a", "b", "c", "d", "e" };Set<String> set = new HashSet<String>(Arrays.asList(array));System.out.println(set);/*7.4 List转数组*/List<String> list = new ArrayList<String>();list.add("a");list.add("b");list.add("c");String[] array = new String[list.size()];list.toArray(array);for (String s : array) System.out.println(s);/*7.5 数组中是否包含某个值*/String[] array = { "a", "b", "c", "d", "e" };boolean b = Arrays.asList(array).contains("a");System.out.println(b);/*7.6 数组合并*/int[] array1 = { 1, 2, 3, 4, 5 };int[] array2 = { 6, 7, 8, 9, 10 };int[] array = org.apache.commons.lang.ArrayUtils.addAll(array1, array2);System.out.println(Arrays.toString(array));/*7.7 String数组转字符串(使用指定字符拼接)*/String[] array = { "a", "b", "c" };String str = org.apache.commons.lang.StringUtils.join(array, ", ");System.out.println(str);/*7.8 数组逆序*/int[] array = { 1, 2, 3, 4, 5 };org.apache.commons.lang.ArrayUtils.reverse(array);System.out.println(Arrays.toString(array));/*7.9 数组元素移除*/int[] array = { 1, 2, 3, 4, 5 };int[] removed = org.apache.commons.lang.ArrayUtils.removeElement(array, 3);System.out.println(Arrays.toString(removed));
8、数组异常
数组下标越界异常,java.lang.ArrayIndexOutOfBoundsException。在java中,数组下标从0开始,我们定义了一个长度为3的数组,想要从中取出第四位,便会抛出此异常。
int[] array = new int[] { 1, 2, 3 };System.out.println(array[3]);//java.lang.ArrayIndexOutOfBoundsException
0 0
- java数组声明详解
- JAVA数组详解
- Java数组知识详解
- JAVA数组详解
- JAVA之数组详解
- Java多维数组详解
- 10JAVA数组详解
- java数组初始化详解
- Java数组详解
- java数组初始化详解
- JAVA数组详解
- java二维数组详解
- JAVA数组详解
- Java数组详解
- Java数组详解
- Java 数组的详解
- Java 数组详解
- java数组详解
- android的广播和意图intent
- 博客
- 你必须学会的Git入门基本操作
- 学习Qt的资源-网站、论坛、博客等
- 领略千变万化的Android Drawable (二)
- Java 数组详解
- 勾股定理一日一证连载76
- Java集合的使用:List与Map
- RSA算法使用介绍
- c++笔试面试2
- ajax.html
- 数据结构实验之排序三:bucket sort
- spring 运行原理
- Spring的自动装配方法