Java数组
Java 语言中提供的数组是用来存储固定大小的同类型元素,这一点和PHP语言的可变数组长度不同。
声明变量数组
首先必须声明数组变量,才能在程序中使用数组。下面是声明数组变量的语法:
dataType[] arrayRefVar; // 首选的方法
或
dataType arrayRefVar[]; // 效果相同,但不是首选方法
例子:
声明一个整形数组:
int[] numbers;
创建数组
方式一:new一个,指定数组长度
Java语言使用new操作符来创建数组,语法如下:
arrayRefVar = new dataType[arraySize];
例子:
// 包含十个元素的订单数组
String[] orderList = new String[10];
方式二:初始化直接给数组赋值
double[] numbers = {2,3,4,566.00};
输出数组信息
一、输出单个元素值
double[] numbers = {2,3,4,566.00};
System.out.println(numbers[0]);// 下标从零开始,输出数组第一个值`在
二、输出整个数组信息
double[] numbers = {2,3,4,566.00};
System.out.print(Arrays.toString(numbers));
程序输出:2,3,4,566.00
数组操作实例:
package wisdom;import java.util.Arrays;public class ArrayDemo {public static void main(String[] args) {double[] numbers = {2,3,4,566.00};System.out.println(numbers[0]);test(10);int[] ddd = new int[]{1,2,3};printString(ddd);int[] array1 = new int[]{1,2,3,4,5};int[] array2 = array1;int[] array3 = new int[]{6, 6, 7, 8, 9};int[] array4 = new int[]{4, 5, 6};if(Arrays.equals(array1, array2)) {System.out.println("array1等于array2");} else {System.out.println("array1不等于array2");}if(Arrays.equals(array1, array3)) {System.out.println("array1等于array3");} else {System.out.println("array1不等于array3");}if(Arrays.equals(array1, array4)) {System.out.println("array1等于array4");} else {System.out.println("array1不等于array4");}}public static void test(int x) {int[] nums = new int[x];String[][] name = new String[2][];name[0] = new String[3];name[1] = new String[3];name[0][0] = "city";name[0][1] = "name";name[0][2] = "birthday";name[1][0] = "city1";name[1][1] = "name1";name[1][2] = "birthday1";nums[0] = 212;nums[1] = 13;nums[2] = 14;nums[3] = 15;for (int i = 0;i<nums.length;++i) {System.out.println(nums[i]);}System.out.println(Arrays.toString(name[1]));Arrays.sort(nums);System.out.println(Arrays.toString(nums));}public static void printString(int[] a) {for (int i =0;i<a.length;i++) {System.out.print("<hr/>" + a[i]);}}
}
输出结果:
多维数组定义
多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组,例如:
String[][] name = new String[2][2];
多维数组的动态初始化(以二维数组为例)
type[][] typeName = new type[typeLength1][typeLength2];
type 可以为基本数据类型和复合数据类型,typeLength1 和 typeLength2 必须为正整数,typeLength1 为行数,typeLength2 为列数。
例如:
int[][] a = new int[2][3];
解析:
二维数组 a 可以看成一个两行三列的数组。