JAVA-初步认识-第三章-if语句练习-星期和季节

Posted 照破山河万朵

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA-初步认识-第三章-if语句练习-星期和季节相关的知识,希望对你有一定的参考价值。

一.

这里开始对if语句的应用,展开操作实验。

 

(截图给出了if第三种格式的一个应用,从中我得出以下几点:1. 一种最常见,也最合理的情况就是,在if条件语句的前面必须有前提条件。给定了前提,然后通过if条件语句来进行判断,从而决定,执行哪些语句。2. if和else if 里面都是单条语句,因此省略了{}。3. 案例是输出不同日期对应不同星期的情况,这表明什么if判断语句,解决的是“针对不同情况,实施不同措施”,不同种类的划分问题。4. 在if语句划分的基础上,引出了一个编码重复性的知识点。)

在判断输入数据代表星期几的例子中,证明了我对于==比较运算符理解的不够透彻,和对if第三种格式的理解不够。最后一个else后面不用接任何条件表达式,代表着除上面几种情况外的剩余所有数据。

注意:if的格式2和格式3,是对所有区间进行了划分,并且当每一部分区间成立时,应该执行什么语句都交代清楚了,只有执行过其中一部分,才会退出if语句。格式3相对2来说,区间划分的更多罢了。

自己尝试书写此例,发现错误。

删掉{}后,程序反而能够运行。

分析:仔细观看截图,发现是一些分支代码块少些了花括号。

这里还要说明一点,后面会讲到Switch语句的执行顺序,在if语句里面,执行的顺序是从上到下,一旦执行了某一个部分,那就直接退出if语句,Switch语句和if不一样。为什么会谈到执行顺序,就是因为结构比较复杂,内部的语句较多。

二. 

首先要明白,星期和季节题都是锻炼对if语句的使用。这里的if语句代码块的书写要比之前的要复杂。

注意:星期和季节的例子可以这么来看,在给定的众多数据中,只有特定的一小部分数据有效,需要细分操作。剩下的无用数据归为一类。只是在判断给定的数据属于哪一类时,判断的语句书写有简单,有复杂。

思路:目前对于java语言认识不够深入,以现有的知识水准来写的话,只能用if格式三,且书写的语句很多。实话说,到目前为止也就接触过if语句,其他的稍微复杂一些就是运算符。运算符支撑不起这么大的摊子。我们现在处于程序流程控制的知识块,这是一个控制的节奏。一个复杂的问题,我们该如何控制它一步步运算下来。

书写形式如下:

int x;

if (x==3)

{

System.out.println(x+"对应的是春季");

}

.......

但是,有没有if的条件语句中可以一次性判别多个的形式?→这就和解题一样,虽然会好多简便的解题方法,但是由于对java语言的理解不深入,导致只能用笨拙的方法。

上面的缺点就在于,有太多的重复输出语句,如System.out.println(x+"对应的是春季");就要写四遍,还有夏季,秋季,冬季.....。

在编程领域有这么一句话,提高代码的复用性。一个代码用两次是可以的,一旦超过两次,就需要重新思考代码的书写。

提高代码复用性的手段有很多种,这里只介绍一种,连接条件语句。(这种情况被称作多条件对应相同内容

怎么连接条件语句,就是用逻辑运算符。逻辑运算符的存在可以提高代码的复杂性。→一个复杂if语句的思考过程。

看下面的截图,使用的是短路或。自己对于前面的知识点,又开始有点遗忘。短路或和或运算得到的结果是一样的,只是在某一些情况下,短路或更能提高运算的效率。||左侧为true时,右侧就不在进行运算,直接输出结果为true,但是当左侧为false时,右侧还是要接着运算,这时的操作和单|是一样的。还有一点是,相较于其他运算符链接的参数而言,逻辑运算符可以链接的参数更多,可以说没有上限。

逻辑运算符不光可以连接两个表达式,如下

视频中出现了一个错误,截图如下

错误:没有找到对应的类。原因:设置了classpath,java命令执行时类文件名写错了。

在这里源程序写的是IfTest2.java,但是代码中的类名是class IfTest。因此,即使编译IfTest2.java源程序,输出认识对应类名的类文件,而非源程序名的类文件。当然,也有可能是在DOS中启用java运行时,敲错了类文件的名字。

经过前面的讲解,得到了一个简化的源程序,但是还是不够简化,if的条件语句里,month==3 || month==4 || month==5; 还是显得太长

可以对输入数据的判断换个说法(写或是将所有的条件表达式列出来,太繁琐,可以用范围来代表条件表达式),month>=3 & month<=5; &连接两个boolean类型的数据,if条件语句始终代表的是一种判断。在这里,又提到了&和&&的区别,&需要对两边的表达式都要进行判断,而&&只需要判断左边的。&&当左边为false时,才不会断定右边的表达式。→一定要明确一点,写&&或者||和单写&,|的结果是一样的,只是写了双的会提高部分的效率。

这里对if语句的认识再次升华,if语句第三种格式实际上是对全区间进行了判别。为什么会有全区间的判别,就在于输入的不确定性。

注意:if语句的格式2和格式3均是对全区域进行的判断分析。

三. 总结

在星期和季节的例子的学习中,其实还是回到了计算机编程的本源问题上来。计算机是帮助我们运算的,怎么运算靠的是程序。那么程序又是什么,程序是人类运算思想和运算过程的计算机展现。人怎么想,怎么做的,就用对应的计算机语言来表示。

 

 

以上是关于JAVA-初步认识-第三章-if语句练习-星期和季节的主要内容,如果未能解决你的问题,请参考以下文章

JAVA-初步认识-第三章-语句-switch练习

JAVA-初步认识-第三章-语句-for的练习

JAVA-初步认识-第三章-语句-if格式3

JAVA-初步认识-第三章-语句-if格式2

JAVA-初步认识-第三章-语句-switch

JAVA-初步认识-第三章-循环结构