目录

一维数组

创建,初始化,赋值

注意

一些数组的便捷使用方法

使用 .length得到数组长度

Arrays相关的使用

二维数组


文章某些地方会出现java与c语言的比较

文章内容参考韩顺平老师的课堂笔记

一维数组

创建,初始化,赋值

可以先创建再初始化,也可以创建的时候直接初始化。但是,如果选择先创建再初始化,就不能够整体赋值,只能一个一个赋值;如果选择创建的同时直接初始化,就可以直接整体赋值。

//首先,我们需要知道,以下两句话是相同的效果。平常写的时候就看个人习惯
int[] a;
int a[];

/*—————————————————动态初始化:只规定数组长度,不做初始化赋值—————————————————*/
//只有一种方式: 元素个数必须写在new后面的方括号里,不能写在等号前面方括号里
int a[] = new int[6];

/*—————————————————静态初始化:创建的同时确定内容—————————————————*/
//第一种
int a[]={6,6,6};
//第二种
int a[]=new int[]{6,6,6};
//第三种
int a[]=new int[3];
a[0]=a[1]=a[2]=6;    //当然也可以通过循环来初始化赋值
  • 一点个人总结的的小技巧:方括号里的数字,整体初始化赋值,这两者必须有且只有一个。如果要整体初始化,那么方括号里就不能写具体的数字;如果方括号里写了具体的数字,就不能整体初始化赋值。

如果不做初始化,那么将自动初始化为:

整型数组都默认初始化为 0(byte,short,int,long)

浮点型数组,默认初始化为 0.0(float,double)

char默认初始化为 \u0000 

布尔型数组初始化为 false

String初始化为null

注意

  1. 创建数组的时候,元素个数是可以写变量的哦。但是c语言就只能是常量,所以java在这里相对灵活了一点点。
int n=6;
int a[]=new int[n];

 2.元素个数确定后无法更改(跟c语言一样不是动态的),使用的时候也不能越界。

     3.凡是有new关键字出现,jvm就会在堆内存中为其开辟一块新的空间。我们做动态初始化的时候,那个等号其实就是把开辟的空间地址赋给数组变量。

一些数组的便捷使用方法

使用 .length得到数组长度

int a[]={1,2,3,4,5};
System.out.println(a.length);
//运行结果为:5

Arrays相关的使用

Arrays.fill 快速初始化 / 填充一个数组

int a[]=new int[6];
Arrays.fill(a , 6);
//现在数组a每个元素都是 6

 Arrays.toString 以字符串形式输出一个数组

int a[]=new int[6];
Arrays.fill(a , 6);
System.out.println(Arrays.toString(a));
//输出结果:[6, 6, 6, 6, 6, 6]

Arrays.sort

int a[]={5,4,3,2,1};
Arrays.sort(a);
System.out.println(Arrays.toString);
//输出结果:[1,2,3,4,5]

二维数组

int a[][]=new int[3][4];
//第一个方括号可以看做有多少个一维数组,第二个看做到了这个一维数组的第几个元素
//可以抽象地理解为,前面表明多少行,后面表明多少列

其余性质,使用方法,注意事项均和一维数组一样。