for-each循环
打印数组所有元素
public class Demo04 {public static void main(String[] args) {int[] num = {1,5,2,3,4};for (int num1:num) {System.out.println(num1);}}
}
多维数组
多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组。
二维数组
int[][] num = new int[2][5];//可以看作是一个2行5列的数组
相关使用:
//打印二维数组的所有元素
public class Demo05 {public static void main(String[] args) {int[][] num = {{1,2},{3,4},{5,6}};for (int i = 0; i < num.length; i++) {for (int j = 0; j < num[i].length; j++) {System.out.println(num[i][j]);}}}
}
打印结果:
//打印二维数组里的某个元素
public class Demo06 {public static void main(String[] args) {int[][] num = {{1,2},{3,4},{5,6}};printArray(num[2]);}public static void printArray(int[] num){for (int i = 0; i < num.length; i++) {System.out.println(num[i]);}}
}
Arrays类
- 数组的工具类java.util.Arrays
- 由于数组对象本身并没有什么方法可以供我们调用,但API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行一些基本的操作。
- 查看JDK帮助文档
- Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名进行调用,而"不用"使用对象来调用(注意:是“不用”而不是“不能")
- 具有以下常用功能:
1.给数组赋值:通过fil方法。
2.对数组排序:通过sort方法,按升序。
3.比较数组:通过equals方法比较数组中元素值是否相等。
4.查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。
代码演示:
import java.util.Arrays;
public class Demo07 {public static void main(String[] args) {int[] num = {1,5,6,84,66,16,39,25,36};System.out.println(Arrays.toString(num));//打印数组元素Arrays.sort(num);System.out.println(Arrays.toString(num));//对数组元素从小到大排序打印Arrays.fill(num,2,4,1);System.out.println(Arrays.toString(num));//把数组2-4范围的元素赋值1Arrays.fill(num,1);System.out.println(Arrays.toString(num));//把数组内的所有元素赋值1}
}
程序结果:
冒泡排序
1.比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置
2.每一次比较,都会产生出一个最大或者最小的数字
3.下一轮会减少一次排序!
4.依次循环,直到结束!
代码演示:
import java.util.Arrays;
public class Demo08 {public static void main(String[] args) {int[] num = {5,2,4,8,63,14,98,120,32,12};int[] printArray = printArray(num);System.out.println(Arrays.toString(num));}public static int[] printArray(int[] num){int number = 0;for (int i = 0; i < num.length-1; i++) {for (int j = 0; j < num.length-1-i; j++) {if (num[j+1]<num[j]){number = num[j];num[j] = num[j+1];num[j+1] = number;}}}return num;}
}
代码结果:
稀疏数组
有些数组很多值是默认值0,记录了很多没有意义的数据我们可以用稀疏数组来解决
当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方式是:
- 记录数组一共有几行几列,有多少个不同值
- 把具有不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模