Debug

作用

排查错误

打断点

  • 在可疑代码处打上断点
  • 如过不知道哪里可疑,可以在main方法第一行打

预判和见证

  • 每行代码执行前预判执行流程和执行结果
  • 实际执行后观察实际情况和预判是否有出入
  • 如果有出入基本是那行代码有问题,仔细检查

二维数组

概念

二维数组也是一种容器,不同于一维数组,该容器存储的都是一维数组

定义格式

前面的索引代表行 后面的索引代表列
行列才能确定二位素数当中具体元素的位置

格式:数据类型 [ ] [ ]   变量名;
范例:int [ ] [ ] arr;
public class TwoDimensionalDemo {
    public static void main(String[] args) {
        int[][] arr = new int[4][5];
        arr[0][0] = 5;
        System.out.println(arr[0][0]);
        //外层控制行
        for (int i = 0; i < arr.length; i++) {
            //内层控制列
            for (int i1 = 0; i1 < arr[i].length; i1++) {
                arr[i][i1] = 18;
            }
        }
        for (int i = 0; i < arr.length; i++) {
            for (int i1 = 0; i1 < arr[i].length; i1++) {
                System.out.print(arr[i][i1] + "\t");
            }
            System.out.println();
        }
    }
}

初始化

动态初始化

格式: 数据类型 [ ] [ ] 变量名 = new 数据类型[ m ] [ n ];
m表示这个二维数组,可以存放多少个一维数组
n表示每一个一维数组,可以存放多少个元素
范例:int [ ] [ ] arr = new int [ 2 ][ 3 ];
该数组可以存放2个一维数组,每个一维数组中可以存放3个int类型元素

静态初始化

格式:数据类型 [ ] [ ] 变量名 = new 数据类型[ ] [ ] { {元素1,元素2}, {元素1, 元素2} };
范例:int [ ] [ ] arr = new int [ ][ ] { {11,22} , {33,44} };
简化格式:数据类型 [ ] [ ] 变量名 = { {元素1,元素2}, {元素1, 元素2} };
范例:int [ ] [ ] arr = { {11,22} , {33,44} }

进制

概念

指进位制,是人们规定的一种进位方式,表示某一位置上的数,运算时是逢X进一位。
十进制是逢十进一,二进制就是逢二进一,八进制是逢八进一…

常见进制

十进制

运算规则:逢十进一,借一当十

二进制

二进制数据是用0和1两个数码来表示。例如:0101000
进位规则是“逢二进一”,借位规则是“借一当二”。

八进制和十六进制

采用0,1,2,3,4,5,6,7八个数字,逢八进1
用数字0到9和字母A到F(或a-f)表示,其中:A-F表示10-15,这些称作十六进制。
【0】【1】【2】【3】【4】【5】【6】【7】【8】【9】【a】【b】【c】【d】【e】【f】

作业

要求定义一个方法,该方法可以把int类型的一维数组进行反转(注意考虑需不需要返回值)
public static void main(String[] args) {
        swapArray(new int[]{5, 4, 3, 2, 1});
    }

    /**
     * 数组反转
     *
     * @param arr 数组
     */
    public static void swapArray(int[] arr) {
        int temp = arr[0];
        for (int i = 0; i < arr.length / 2; i++) {
            arr[i] = arr[arr.length - 1 - i];
            arr[arr.length - 1 - i] = temp;
            temp = arr[i + 1];
        }
        System.out.println(Arrays.toString(arr));
    }
定义一个方法,该方法可以随机生成10个数字,随机范围为[1,15] 。(把生成的随机数放在数组中返回)
import java.util.Arrays;
import java.util.Random;

/**
 * @author DS_xiao_jian
 * @date 2023.04.05 下午 03:47:53
 */
public class Test {
    public static void main(String[] args) {
        System.out.println(Arrays.toString(randomNumberPadding()));

    }

    /**
     * 随机生成10个数字,随机范围为[1,15]
     * @return 数组
     */
    public static int[] randomNumberPadding() {
        Random random = new Random();
        int[] arr = new int[10];
        for (int i = 0; i < arr.length; i++) {
            int num = random.nextInt(15) + 1;
            arr[i]=num;
        }
        return arr;
    }
}
定义一个方法,该方法可以判断一个数字在某个数组中是否存在。
public class Test2 {
    public static void main(String[] args) {
        int num = 10;
        int[] arr = {9,5,6,1,8,10};
        System.out.println(numberExistInArray(num,arr));

    }

    /**
     * 判断一个数字在某个数组中是否存在
     * @param num 数字
     * @param arr 数组
     * @return 布尔 是否存在
     */
    public static boolean numberExistInArray(int num ,int[] arr){
        for (int i = 0; i < arr.length; i++) {
            if (num == arr[i]){
                return true;
            }
        }
        return false;
    }
}
最后修改:2023 年 04 月 05 日
如果觉得我的文章对你有用,请随意赞赏