目录
一维数组
创建,初始化,赋值
注意
一些数组的便捷使用方法
使用 .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
注意
- 创建数组的时候,元素个数是可以写变量的哦。但是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]
二维数组
描述:二维数组可以抽象的看做是一个表格,每个格子都有对应的行数和列数。在二维数组里,每个格子就是数组中的一个元素,数组的两个下标就是该元素的坐标。
定义:二维数组是指以一维数组作为元素的数组。文章来源:https://www.toymoban.com/news/detail-428090.html
语法:数据类型 数组名[行数][列数];文章来源地址https://www.toymoban.com/news/detail-428090.html
初始化
静态初始化
int[][] a = {{1,1,1}{2,2,2}{3,3,3}};
//注意每行元素之间没有逗号隔开
动态初始化
//第一种:定义同时初始化
int[][] a = new int[6][6];
//如果不确定数组大小,默认不分配空间,后面无法使用该数组
//第二种:先定义,再初始化
int[][] a;
a = new int[6][6];
不规律初始化
int[][] a = new int[3][];
a[0] = new int[2];
a[1] = new int[6];
a[2] = new int[4];
/*
还记得定义吗:二维数组是以一维数组为元素的数组
不规律定义中,先初始化了行数
下面把每一行看做是一个元素,初始化列数
整个数组共三行,第一行2个元素,第二行6个,第三行4个
*/
到了这里,关于Java——一维数组和二维数组(主要详讲一维数组)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!