数组

mac2025-08-12  12

DAY2

对于容器操作,一般我们分为三种操作类型 1、定位 2、替换 3、求长 目前我们看到的是数组,数组的定位,替换求长分别是: //数组的定位 int item = arrays[4]; int item2= array[6]; int item3= array[-1]; //数组的替换 arrays[3]=100; //数组的求长 int length= arrays.length;

int[] arrays={1,2,3,4,5,6};//静态赋值 int[] arrays = new int [6];//动态赋值 arrays[0]=1; arrays[1]=2; //数组的反转 //建立新的数组反转 for(int j=0;j<arrays.length;j++){ result[j]=arrays[arrays.length-1-j]; } //在原有的位置上反转,不创建新的数组 int i =arrays.length/2; for(int j=0;j<i;j++){ int temp=arrays[j]; arrays[j]=arrays[arrays.length-1-j]; arrays[arrays.length-1-j]=temp; }

//数组的遍历1 for(int j=0;j<arrays.length;j++){ System.out.print(arrays[j]); } //数组的遍历方法2:增强式for循环 for(int item : result){ System.out.print(item); }

//数组的排序 //直接排序:与后面的分别比较、交换 import java.util.; public class DSort{ public static void main(String[] args){ int[] arrays={32,64,58,99,77,63,21,18}; //两个for循环的嵌套 //外层for循环确定需要替换的位,内层for负责比较 for(int i=0;i<arrays.length;i++){ for(int j=i;j<arrays.length;j++){ if(arrays[i]<arrays[j]){ int temp=arrays[i]; arrays[i]=arrays[j]; arrays[j]=temp; } System.out.println(“第”+i+“趟排序第”+j+“次:”+Arrays.toString(arrays)); } System.out.println(“第”+i+“趟排序结束:”+Arrays.toString(arrays)); } System.out.println(Arrays.toString(arrays));//变成字符串 } } //选择排序:找到最大的进行替换 import java.util.; public class SSort{

public static void main(String[] args){ int[] arrays={32,64,58,99,77,63,21,18}; for(int i=0;i<arrays.length;i++){ int max=arrays[i]; int index=i; for(int j=i;j<arrays.length;j++){ if(max<arrays[j]){ max=arrays[j]; index=j; } } int item=arrays[i]; arrays[i]=arrays[index]; arrays[index]=item; }

System.out.println(Arrays.toString(arrays)); } } //冒泡排序:比较前一个与后一个的值,后一个大则交换。 import java.util.*; public class BSort{ public static void main(String[] args){ int[] arrays={32,64,58,99,77,63,21,18}; for(int i=0;i<arrays.length;i++){ for(int j=0;j<arrays.length-i-1;j++){ if(arrays[j]<arrays[j+1]){ int temp=arrays[j]; arrays[j]=arrays[j+1]; arrays[j+1]=temp; } } } System.out.println(Arrays.toString(arrays)); } }

最新回复(0)