声明数组变量:
声明数组变量:
dataType[] arrayRefVar; // 首选的方法 double[] mylist
或
dataType arrayRefVar[]; // 效果相同,但不是首选方法
创建数组:
arrayRefVar = new dataType[arraySize]; //mylist = new double[10];
上面的语法语句做了两件事:
1.使用 dataType[arraySize] 创建了一个数组
2.把新创建的数组的引用赋值给变量 arrayRefVar
两者用一条语句实现:
dataType[] arrayRefVar = new dataType[arraySize];
//double[] myList = new double[10];
实例:
public class TestArray
{
public static void main(String[] args)
{
// 定义数组
double[] myList = new double[10];
myList[0] = 5.6;
myList[1] = 4.5;
myList[2] = 3.3;
myList[3] = 13.2;
myList[4] = 4.0;
myList[5] = 34.33;
myList[6] = 34.0;
myList[7] = 45.45;
myList[8] = 99.993;
myList[9] = 11123;
double total = 0;
for (int i = 0; i < 10; i++)
{
total += myList[i];
}
System.out.println("总和为: " + total);
}
}
首先声明了一个数组变量 myList,接着创建了一个包含 10 个 double 类型元素的数组,并且把它的引用赋值给 myList 变量
处理数组
public class TestArray
{
public static void main(String[] args)
{
double[] myList = {1.9, 2.9, 3.4, 3.5}; //定义一个数组
for (int i = 0; i < myList.length; i++) //打印所有数组元素
{
System.out.println(myList[i] + " ");
}
double total = 0;
for (int i = 0; i < myList.length; i++)
{
total += myList[i];
}
System.out.println("Total is " + total);
// 查找最大元素
double max = myList[0];
for (int i = 1; i < myList.length; i++)
{
if (myList[i] > max) max = myList[i];
}
System.out.println("Max is " + max);
}
}
For-Each 循环:
能在不使用下标的情况下遍历数组
for(type element: array)
{
System.out.println(element);
}
例子:
public class TestArray
{
public static void main(String[] args)
{
double[] myList = {1.9, 2.9, 3.4, 3.5};
// 打印所有数组元素
for (double element: myList)
{
System.out.println(element);
}
}
}
数组作为函数的参数
public static void printArray(int[] array)
{
for (int i = 0; i < array.length; i++)
{
System.out.print(array[i] + " ");
}
}
//数组做参数其实是传自己的引用进去,所以值会被修改
//数组之间互相赋值也是把引用赋值,所以它们其实是同一个
数组作为函数的返回值
public static int[] reverse(int[] list)
{
int[] result = new int[list.length];
for (int i = 0, j = result.length - 1; i < list.length; i++, j--)
{
result[j] = list[i];
}
return result;
}
多维数组
//定义:
String[][] a = new String[3][4];
String[][] s = new String[2][];
s[0] = new String[2];
s[1] = new String[3];
s[0][0] = new String("Good");
s[0][1] = new String("Luck");
s[1][0] = new String("to");
s[1][1] = new String("you");
s[1][2] = new String("!");
Arrays 类
Arrays 类能方便地操作数组,它提供的所有方法都是静态的
具有以下功能:
给数组赋值:通过 fill 方法。
对数组排序:通过 sort 方法,按升序。
比较数组:通过 equals 方法比较数组中元素值是否相等。
查找数组元素:通过 binarySearch 方法能对排序好的数组进行二分查找法操作。
|