Day7数组 排序

增强for循环:for(int 变量:数组){
输出变量
}

**最大值:**定义第一个数守擂

**冒泡排序:**N个数字来排队
两两相比小靠前
外层循环N-1
内层循环N-1-I
16 25 9 90 23=int[]nums
一轮 16 9 25 23 90 4=5-1-0
二轮 9 16 23 25 3=5-1-1
三轮 9 16 23 2=5-1-2
四轮 9 16 1=5-1-3

二维数组
int nums[][]={{1,2},{1,2,3},{1,2}};
nums[0][1]=2
nums[1][1]=2
int[][] nums=new int[3][5];
nums[0][0]=1;
nums[0][1]=2;
nums[1][0]=5;
nums[1][1]=6;
for(int i=0;i<nums.length;i++){
for(int j=0;j<nums[i].length;j++){
sout(nums[i][j])
}
}

数组遍历:
for(int i=0;i<nums.length;i++){}
增强for循环:for(int temp:nums){}

数组增删改查:
String name[]={“张三”,“李四”,“王五”};
String name[]=new String[100];
name[0]=“张三”;
name[1]=“李四”;
name[2]=“王五”;
0 1 2 3
“张三”, “李四”, “王五” “小红”
//1、找到李四的下标
//2、从下标加1往前覆盖
//3、把当前有值的最后一位置空
入算法
70 80 90 100 110 []
插入值85
//1、找到插入位置下标
//2、从最后一位覆盖到下标位置
//3、85覆盖90
/**

  • 修改数组
    */
    public class ShuZu02 {
    public static void main(String[] args) {
    String[] phones={“iphone4”,“iphone5”,“iphone6”,“iphone7”};
    for (int i=0;i<phones.length;i++){
    System.out.print(phones[i]+" “);
    }
    System.out.println();
    System.out.println(”-----------------------------------");
    //增加
    int index=-1;
    for (int i = 0; i <phones.length ; i++) {
    if (phones[i].equals(“iphone5”)){
    index=i;
    }
    }
    if (index!=-1){
    phones[index]=“iphone5s”;
    for (int i=0;i<phones.length;i++){
    System.out.print(phones[i]+" “);
    }
    }
    System.out.println();
    System.out.println(”--------------------------------------");
    //删除 iphone5s
    boolean flag=false;
    int count=-1;
    for (int i = 0; i <phones.length ; i++) {
    if (phones[i].equals(“iphone5s”)){
    flag=true;
    count=i;
    for (int j = count; j <phones.length-1 ; j++) {
    phones[j]=phones[j+1];
    }
    }
    }
    phones[phones.length-1]=null;
    if (flag){
    System.out.println(“找到ipone5s 并覆盖”);
    for (int i = 0; i <phones.length ; i++) {
    System.out.print(phones[i]+" “);
    }
    }else{
    System.out.println(“没找到”);
    }
    System.out.println();
    System.out.println(”--------------------------------------");
    //添加iphone7s到null
    boolean flag1 =false;
    for (int i = 0; i <phones.length ; i++) {
    if (phones[i]==null){
    phones[i]=“iphone7s”;
    flag=true;
    break;
    }
    }
    if (flag){
    System.out.println(“添加成功”);
    for (int i = 0; i <phones.length ; i++) {
    System.out.print(phones[i]+" ");
    }
    }else {
    System.out.println(“添加失败”);
    }

    }
    }

Arrays:
import java.util.Arrays;
/**

  • Arrays 类
    */
    public class ArraysLei {
    public static void main(String[] args) {
    int[]nums={1,3,5,8,9,4,};
    int[]nums1={1,3,5,8,9,4,};
    //比较数组
    boolean flag = Arrays.equals(nums,nums1);
    System.out.println(flag);
    //升序数组
    Arrays.sort(nums);
    for (int num:nums){
    System.out.print(num+" ");
    }
    System.out.println();
    //将数组转换成字符串
    System.out.println(Arrays.toString(nums));
    //填充数组
    Arrays.fill(nums1,4);
    System.out.println(Arrays.toString(nums1));
    //复制数组
    int[]nums3=Arrays.copyOf(nums,10);
    System.out.println(Arrays.toString(nums3));
    //根据元素反查下标 前提必须是升序数组
    int num1=Arrays.binarySearch(nums,8);
    System.out.println(num1);
    }
    }

猜你喜欢

转载自blog.csdn.net/weixin_43766697/article/details/84790681