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语句练习-星期和季节的主要内容,如果未能解决你的问题,请参考以下文章