到此为止,我们已经基本了解了Java的基础语法,会定义不同类型的变量,会命名,会给变量赋值和运算等。接下来,我们需要学会流程控制方面的知识。
你们一定都买过彩票吧,没买过的举手!很好,都买过。买完之后,是不是经常幻想中了500万之后干什么?我经常幻想中了500万后就买辆宝马X5。那么用程序来描述这个问题,就可以用if条件语句,像下面这样:
我们把现实需求转化为流程控制模型,然后用代码语句实现。幻想很美好,现实很残酷。买彩票的钱经常都是打水漂。但是我们就不买了吗?NO,我觉得下次我一定会中!那么就变成了下面这样:
买了几十期之后,我们发现偶尔还会见到回头钱,有时候中个5块,有时候中个10块,有时候还能运气爆棚一下,中个200块。像笔者中10块的时候,下一期就多买5注,中200的时候,就会去撸个串打个牙祭:
if条件语句非常简单,但是需要注意几点:
在编写程序的时候,需要注意代码缩进保证可读性。比如像上图代码可以改写成:
if (n >= 5000000) {
System.out.println("买一辆宝马X5");
} else {
if (n >= 200) {
System.out.println("撸串");
} else if (n >= 10) {
System.out.println("多买5注");
}
}
对于上面那个例子,条件是判断一个值是否等于某个值,并且选项很多,对于这种情况,还可以用另外一种选择语句来描述,就是switch语句。switch在处理多个选项时,比较方便。它的基本语法结构如下:
编码举例如下:
switch (n) {
case 5000000:
System.out.println("买一辆宝马X5");
break;
case 200:
System.out.println("撸串");
break;
case 10:
System.out.println("多买5注");
break;
default:
System.out.println("买一注");
break;
}
需要特别注意的是图中3段文字。总结成文字如下:
至于switch和if-else的选择,笔者没有做太多的研究,据网上一些文章说,当选择项比较多的时候switch效率要高一些。不过笔者在实际运用中,很少使用switch。