数组是一种数据结构,用来存储同一类型值的集合
int[] a = new int[10];
数字数组,初始化时全部为0 boolean 为false 对象数组和字符数组为null
a.length 表示数组的长度
for each 循环
遍历数组
for(int element:a)
System.out.println(element);
int[] a = new int [10];
for(int i=0;i<10;i++)
{
a[i]=i;
}
System.out.println(Arrays.toString(a)); //[0,1,2,3,4,5,6,7,8,9]
数组初始化以及匿名数组:
int[] smallPrimes = {1,2,3,4,5,6}; //创建数组对象同时初始化
new int[] {1,2,3,4,5,6} //初始化匿名数组
有长度为0的数组,并且和null 不同
数组拷贝:
int[] luckyNumbers = smallPrimes;
luckyNumbers[5]=12; //这个时候两个数组的第六位都是12;
如果希望将一个数组中的所有值拷贝到另一个数组中去,就要使用Arrays类的copyOf方法
int[] copiedluckyNumbers = arrays.copyOf(luckyNumbers,luckyNumbers.length); //第二个是新数组的长度
用来增加数组的大小:luckyNumbers = Arrays.copyOf(luckyNumbers,2*luckyNumbers.length); //如果之后的数组小,只能留下前面的数值
命令行参数:
不会
数组排序:
Arrays类中的sort方法:
int[] a = new int [10000]
...
Arrays.sort(a) //这个方法使用了优化的快速排序算法
多维数组:
int [] [] balances = new int [10][10];
int [] [] magicSquare =
{
{16,3,2,13},
{5,10,11,8},
{9,6,7,12},
{4,15,14,1}
}
不规则数组:
package test;
import java.lang.reflect.Array;
import java.math.*;
import java.util.Arrays;
public class test
{
public static void main(String[] args)
{
test a = new test();
a.irregular();
}
void irregular()
{
int [][] arrays = new int [3][];
arrays[0] = new int[2];
arrays[1] = new int[3];
arrays[2] = new int[4];
for(int i=0;i
for(int j=0;j
}
for(int i=0; i
System.out.println();
for(int []row: arrays) //foreach输出
for(int col:row)
System.out.print(" "+col+",");
System.out.println();
}
}