廖雪峰Java教程学习笔记(三)——数组操作
(一)遍历数组
for循环
public class Main{ public static void main(String[] args){ int[] ns = {1, 4, 9, 16, 25}; for (int i=0; i<ns.length; i++){ int n = ns[i]; System.out.println(n); } } }
for each循环
public class Main { public static void main(String[] args) { int[] ns = { 1, 4, 9, 16, 25 }; for (int n : ns) { System.out.println(n); } } }
打印数组内容
import java.util.Arrays; public class Main{ public static void main(String[] args){ int[] ns = {1, 1, 2, 3, 5, 8}; System.out.println(Arrays.toString(ns)); } }
(二)数组排序
冒泡排序
import java.util.Arrays; public class Main{ public static void main(String[] args){ int[] ns ={1, 4, 2, 8, 6}; //排序前 System.out.println(Arrays.toString(ns)); for(int i = 0; i<ns.length - 1; i++){ for(int j = 0; i<ns.length-i-1; j++){ if (ns[j] > ns[j+1]){ //交换ns[j]和ns[j+1] int temp = ns[j]; ns[j] = ns[j+1]; ns[j+1] = temp; } } } //排序后 System.out.println(Arrays.toString(ns)); }
实际上,可以采用Arrays.sort()实现排序,例如
int[] ns = {2, 5, 1, 3, 4}; Arrays.sort(ns); System.out.println(Arrays.toString(ns));
(三)多维数组
二维数组
二维数组就是数组的数组,定义一个二维数组如下
int[][] ns = {{1,2,3,4}, {5,6,7,8}, {9,10,11,12} };
二维数组的每个数组元素的长度并不要求相同,访问二维数组的一个元素使用array[row][col],打印二维数组可以使用Arrays.deepToString()。
三维数组
三维数组就是二维数组的数组,定义一个三维数组如下
int[][][] ns = { { {1,2,3}, {4,5,6}, {7,8,9} }, { {10,11},{12,13} }, { {14,15,16},{17,18} } };
(四)命令行参数
Java程序的入口是main方法,而main方法可以接受一个命令行参数,它是一个String[]数组,这个命令行由JVM接收用户输入并传给main方法。