java 数组
最近学java,一点小心得,希望和大家分享一下,第一次写文章,写的不好希望大家谅解,当然我也会尽力写好这篇文章!
Java创建数组的方法大致有三种
说明:这里以int为数据类型以arr为数组名来演示
一、声明并赋值
int[] arr = {1,2,4, …};
注意这里的花括号不是语句块,而且而且花括号后的分号也不能省
二、声明数组名开辟空间并且赋值
int[] arr;
arr = new int[]{1,2,3, …};
三、声明数组时指定元素个数然后赋值
int[] arr1= new int[3];
注意:最大元素下标为2,并且所有的元素值均为0
赋值一般用for循环
四、在以上的基础上创建多维数组
- int[][] arr = {{1,2,3},{4,5,6},{7,8,9}}; //每个子数组的个数不要求均相同
- int[][] arr = new int[m][n]; //其中n可以省略
- int[][][] arr = new int[m][n][q]; //同样其中n、q可以省略
总结
- 无论那种方法声明必须有 :数据类型 [ ] 如:int[ ]
- 创建多维数组时new后面的第一个方括号种的元素数量总不能省略
- new 数据类型[]{} 其中花括号可以省去,但要在[ ]中填写数组的个数
各个创建数组的方法使用演示如下
方法一:
int[] arr2 = {10,20,30};
for(int element:arr2) {
System.out.print(element+"\n");//其中 "\n" 是换行
}
输出结果:
10
20
30
方法二:
char[] arr4 ; //char型输入时要用单引号(')引着!
arr4 = new char[] {'a','b','c'};
for(char element:arr4) {
System.out.print(element + " ");
}
输出结果:
a b c
方法三:
int[] arr = new int[10];
//换成i<10 或i<=9 因为 arr[10]不存在 强行调用会出错(溢出)!
for(int i = 0;i<=9;i++) {
arr[i]=i;
System.out.print(arr[i]+" ");
}
输出结果:
0 1 2 3 4 5 6 7 8 9
方法四
1.
int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
矩阵形式输出为:
1 2 3
4 5 6
7 8 9
1.
int[][] arr = new int[m][n];
在赋值时使用for循环
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
arr[i][j] = int值;
}
}
若声明时省略n,赋值时须在内层循环中生成新一维数组
for(int i=0;i<m;i++){
arr[i] = new int[数量];
}
二维以上的数组使用的不多,又因为使用方法同二维基本相同,所以在这里就不再演示了。
内容扩展
1. for each语句(增强性for循环)
用于对数组或实现Iterator接口的对象进行遍历。
格式:
for (数据类型 : emelent){
System.out.println(emelent);
}
应用代码:
int[] arr2 = {10,20,30};
for(int element:arr2) {
System.out.print(element+"\n");
}
运行结果:
10
20
30
2.length属性 与 length()方法
二者区别:
- length属性是针对Java中的数组来说的,要求数组的长度可以用其length属性
- length()方法是针对字符串来说的,要求一个字符串的长度就要用Java的length()方法
- Java中的四则()方法是针对泛型集合说的,如果想看这个泛型优多少元素,就调用此方法
应用代码:
for(int i=0;i<arr5.length;i++) {
arr5[i]=i;
}
3.Arrays的toString方法
作用: 将数组的元素生成字符串,数组的各个元素使用方括号括着 [ ]
格式: Arrays.toString(数组名称)
注意: 此方法不能用于直接获得二维数组
应用代码:
int[] arr = {111,222,333};
System.out.println(Arrays.toString(arr));
运行结果:
[111, 222, 333]
希望以上对大家有帮助!
相关阅读
刚刚接触JAVA时,为了便于记录某个方法块的执行时间,通常都会在代码块的执行前和执行后各标记一个时间,取两个时间差。 但是初学者一
Linux系统下,workon提示未找到命令我使用的环境是Ubuntu18,python3.6+django1.1.11虚拟环境明明已经创建好,使用workon命令却提示找
打印流 字符打印流(针对文本进行操作:PrintWriter) 字节打印流(PrintStream 和标准输出流有关系 Syst
java视频时长的计算以及视频封面图截取 本人使用的maven进行下载对应的jar包,其中代码适用window环境和linux环境,亲自测过,没问题,
Java 出现这个异常 InstantiationException 无法创建
Java 出现这个异常 InstantiationException 无法创建对象 解决方法: 加一个无参数的构造类就行了。 public Person(){}