IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 心得体会day3-8(日撸 Java 三百行) -> 正文阅读

[Java知识库]心得体会day3-8(日撸 Java 三百行)

文章链接:?日撸 Java 三百行(总述)_minfanphd的博客-CSDN博客

day3 基本if 语句

3.1 if条件分支语句,

其中,if中的表达式应该为布尔表达式。这里会存在三种不同选择。(假设在if中会有数据的处理)

第一,只使用if语句,这相当于我只过滤我想要的数据;

第二:if...else 语句,不管进入if或者else分支,总会给我返回一个数据;

第三:if…else if…else 语句,这就是多条件分支判断。也会给我返回一个数据,但可能需要进行几层分支的判断。

day4 闰年的计算

4.1 思路整理:何为闰年?

(1)非世纪年(不能被100整除的年份)能被4整除不能被100整除的年份为闰年

(2)世纪年 能被400整除的才是闰年

文中给出两种计算闰年的方法,结合day3的if语句,第一种把所有逻辑判断放在一个if中完成,但第二种方法就比较巧妙,多用一个else if 则可以巧妙简化第一种里面一大串逻辑判断。

/**
     * method1
     * @param paraYear 年份
     * @return boolean
     */
    public static boolean isLeapYear(int paraYear) {
        if ((paraYear % 4 == 0) && (paraYear % 100 == 0) || (paraYear % 400 == 0) ) {
            return true;
        }else {
            return false;
        }
    }

    /**
     * method2
     * @param paraYear
     * @return boolean
     */
    public static boolean isLeapYearV2(int paraYear) {
        if (paraYear % 4 != 0) {
            return false;
        }else if (paraYear % 400 != 0) {
            return false;
        }else {
            return true;
        }
    }

day5: 基本switch 语句

5.1 switch也属于条件分支语句

switch中表达式的值去和case后的值做匹配,若匹配正确则执行其后需要执行代码,遇到break结束执行。若没有case匹配,则最后就会执行default,default 分支不需要 break 语句

5.2 思考1

每一个case后都要跟break吗?答案是否定的。不加break的话将会跳转到相应的case去执行且其以下的所有语句。

5.3 思考2

switch和if条件语句有什么区别呢?最明显差异是表示执行的结构,if中的表达式结果只能是boolean类型,而switch恰恰相反,他表示式结果可以是int,char等。我在实际使用过程中if语句用的比较多,但涉及到判断的if分支较多时,我会考率使用switch,这样效率会高一点。

day6:?基本for 语句

6.1 for语句中表达式的执行顺序

?for(a;b;c)其中a,b,c为表达式,执行顺序:先执行a表达式,一般为初始化语句,再执行b表达式,一般式判断表达式,若为ture去执行循环体,执行完再执行c表达式,若不满足b表达式,则跳出循环。

day7:?矩阵元素相加

7.1 题目解读

矩阵用二维数组存储,计算二维数组的和,计算两个二维数组对应行列相加组成一个新的二维数组,都需要用到for循环遍历(行优先);对矩阵的赋值也需要循环遍历赋初值,在有循环时要避免死循环,确保循环是有限性的。

7.2 二维数组中

int[][] tempMatrix = new int[3][4];
tempMatrix.length; //代表行的长度
tempMatrix[0].length; //代表列的长度

7.3 思考

在这个代码过程中,对矩阵赋初值是否把他抽为一个方法,可被多次调用,但弊端是赋的初值不够灵活。

 /**
     * Matrix initialization
     * @param row 行长度
     * @param column 列长度
     * @return
     */
    public static int[][] initialMatrix (int row, int column) {
        int[][] tempMatrix = new int[row][column];
        for (int i = 0; i < row; i++) {
            for (int j = 0; j < column; j++) {
                tempMatrix[i][j] = i * 10 + j;
            }
        }
        return tempMatrix;
    }


public static void matrixElementSumTest1() {
        int[][] tempMatrix = new int[3][4];
        for (int i = 0; i < tempMatrix.length; i++) {
            for (int j = 0; j < tempMatrix[0].length; j++) {
                tempMatrix[i][j] = i * 10 + j;
            }
        }

        System.out.println("The matrix is: \r\n" + Arrays.deepToString(tempMatrix));
        System.out.println("The matrix element sum is: " + matrixElementSum(tempMatrix) + "\r\n");
    }

    public static void matrixElementSumTest2() {
        int[][] tempMatrix = initialMatrix(3, 4);

        System.out.println("The matrix is: \r\n" + Arrays.deepToString(tempMatrix));
        System.out.println("The matrix element sum is: " + matrixElementSum(tempMatrix) + "\r\n");
    }

day8:?矩阵相乘

8.1 题目解读

矩阵相乘(只有第一个矩阵的列和第二个矩阵的行相等): a矩阵(m*n),b矩阵(n*p)则能相乘,且相乘后的矩阵为m*p。故在矩阵相乘是在一定条件下才能进行,需要用到if判断。

8.2 矩阵相乘 主要代码思想

 //resultMatrix第i行第j列所对应的数值,等于paraFirstMatrix矩阵的第i行分别乘以paraSecondMatrix矩阵的第j列之和
        int[][] resultMatrix = new int[m][p];
        for (int i = 0; i < m; i++) {
            for (int j = 0; j < p; j++) {
                for (int k = 0; k < n; k++) {
                    resultMatrix[i][j] += paraFirstMatrix[i][k] * paraSecondMatrix[k][j];
                }
            }
        }

总结

1. 条件分支语句:if...else 语句;switch case 语句;结合闰年计算 综合运用if,elseif, else

2. 循环语句:for循环,常见的单层,双重,三层循环举例

3. 综合运用条件分支语句和循环语句完成矩阵相乘

条件语句和循环语句在开发中,会经常使用,在使用条件语句时要注意判断条件的逻辑是否正确,在使用循环语句时,当出现多重循环,需要去考虑是否有其他更优方法代替多重循环,因为循环的重数越多,效率也会下降。同时要避免死循环。

?

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-02-26 11:16:56  更:2022-02-26 11:18:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 11:54:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码