各位小伙伴们大家好:
今天周日,又是在图书馆看书的下午,今天继续上一篇随笔说的数组继续进行总结。
建议读者在创建数组时,使用int[ ] a 这种而不是 int a[ ]这种,可以很清晰明朗地看出创建的是一个数组。
一、二维数组的创建(共3中初始化方式):
1、int[ ][ ] twoArray1={{1,2},{3,4},{5,6},{7,8}};
2、int[ ] [ ] twoArray2=new int[4] [2]; ——一共4个{ },每个{ }内有两个元素。
3、int[ ] [ ] twoArray3=new int[4] [ ]; ——后面的长度可以不固定。
二、遍历二位数组(共2中遍历方式):
1、二维数组不可以用for each()进行遍历,只能用普通for进行遍历:
for循环需嵌套: for(int i=0;i for(int j=0;j System.out.print(twoArray[i][j]); } } 2、利用Arrays.deepToString()方法进行输出: System.out.println(Arrays.deepToString(twoArray)); 输出的结果为: 三、Arrays的方法及用途: 1、Arrays定义:是jdk中自带的用于操作array的工具类,里面的方法都是静态的: 2、下面我们就来详细地介绍一下Arrays都有哪些方法和具体的用途: 1)Arrays.sort:数组排序,这个方法使用了优化的快速排序(QuickSort)算法,快速排序算法对于大多数数据集合来说效率都是比较高的。 eg: 输出 : 2)Arrays.ToString() 返回一个包含数组中所有元素的字符串,这些元素用中括号包围,并用“,” 进行分割。在这个方法及后面的方法中,数组的元素类型可以是 byte,short,int,long,float,double,chart,boolean eg: 输出: 这时读者就会好奇了,为什么每一个,后面都要有一个空格然后才有下一个元素。现在我们就来看一下ToString()的源码,大家可能就豁然开朗了。 3)copyOf这个方法在上一篇文章中已经提到了,此处略。 4)Arrays.binarySearch() 使用二分法在有序数组中(必须是有序数组,否则方法无效直接返回负数) static int binarySearch(xxx[ ]a,int start,int end,xxx v )xxx为数据类型; 在有序输出中查找值v,如果找到v,则返回相应的下标,否则返回一个负数。 5)staic void fill (xxx[ ] a,xxx v) 将数组所有的元素设置为v。 6)static boolean equals (xxx[ ] a,xxx[ ] b) 如果两个数组的大小相同,并且下标相同的元素都对应相等,则返回true。