Java day06

mac2024-03-16  25

冒泡排序

概念:相邻两个元素进行比较,互换位置。 代码: int[] a = {3,6,4,2,11,10,5}; for(int j = 0; j<a.length - 1; j++){//j = 0 ,1 ,2 ,3 for(int i = 0; i<a.length-1-j; i++){//? = 0 1 2 3 if(a[i] > a[i+1]){//? 0 1 int temp = a[i]; a[i] = a[i+1]; a[i+1] = temp; } } }

选择排序

概念:固定值和其他值依次比较,交换位置。 代码: int[] a = {4,6,32,5,12,2,15,28,9,10}; for(int j = 0; j<a.length-1; j++){ // j = 0 1 2 3 次数 for(int i = j; i<a.length-1; i++){ // j = 0 1 2 3 作比较 if(a[j] > a[i+1]){ //? = int temp = a[j]; a[j] = a[i+1]; a[i+1] = temp; } } }

快速排序

语法:java.util.Arrays.sort(数组名); 代码: int[] a = {3,4,5,2,1}; java.util.Arrays.sort(a);//注:只能完成升序

可变长参数

概念:可以接收多个同类型的实参,个数不限,使用方式和数组一致。 语法:数据类型... 形参名 注意:可变长参数必须在最后一个形参 举例: public static void add4(int a, int... b){}//可变长参数是最后一个形参 √ public static void add4(int... b, int a){}//可变长参数不是最后一个形参 × public static void main(String[] args){ int a = 10; int b = 20; add(a,b); add2(10,20,30); //add3(); add3(10); add3(10,20); //add4(10,20,30); } //写一个函数完成两个整数(int)求和 public static void add(int c, int d){ System.out.println(c + d); } //写一个函数完成三个整数(int)求和 public static void add2(int c, int d,int e){ System.out.println(c + d + e); } //写一个函数完成整数(int)求和 public static void add3(int... array){//array:可变长等同于数组 //System.out.println("我是可变长"); int sum; for(int i = 0; i<array.length; i++){ sum += array[i]; } System.out.println(sum); }

二维数组

概念:一维数组中的每一个元素还是一个一维数组。(了解) 二维数组的创建: 方式1:先声明,再分配空间 语法:数据类型[][] 数组名; 数组名 = new 数据类型[][]; 举例:int[][] a; a = new int[3][2]; 方式2:声明并分配空间(掌握) 语法:数据类型[][] 数组名 = new 数据类型[][]; 举例:int[][] b = new int[3][4]; 方式3:声明并赋值(麻烦)(了解) 语法:数据类型[][] 数组名 = new 数据类型[][]; 数组名[] = new 数据类型[]; 举例:int[][] c = new int[2][]; c[0] = new int[5]; c[1] = new int[3]; 方式4:声明并赋值(简单)(掌握) 语法:数据类型[][] 数组名 = { {1...}, {1...}, {1...} }; 举例:int[][] d = { {1,2,3},{1,1,1,1,1,1},{2,4} };

二维数组遍历

int[][] array = new int[3][4]; for(int j = 0; j<array.length; j++){//j = 0 1 2 for(int i = 0; i<array[j].length; i++){// ? = 0 1 2 System.out.print(array[j][i] + "\t"); } System.out.println(); }
最新回复(0)