鱼C论坛

 找回密码
 立即注册
查看: 7323|回复: 8

[系列教程] 【Java 教程(原创)】012.条件语句详解

[复制链接]
发表于 2017-1-16 14:59:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 零度非安全 于 2017-1-19 14:37 编辑

【Java 教程(原创)】索引帖

在说语句之前,我先将 Java 中的语句分为以下 6 类

(1) 方法调用语句。例如:
System.out.println("Hello Java");
(2) 表达式语句。表达式语句指由一个表达式构成一个语句,即在表达式尾加上分号。例如赋值语句:
x = 23;
(3) 复合语句。在 Java 中,可以用 { } 把一些语句括起来构成复合语句,例如:
{
        z = 123 + x;
        System.out.println("Hello Java");
}
(4) 空语句。一个分号也是一条语句,称为空语句。

(5) 控制语句。控制语句分为条件分支语句、开关语句和循环语句 3 种类型,将在后面几讲介绍。
(6) package 语句和 import 语句。package 语句和 import 语句和 类、对象 有关,将在以后讲到哈


                               
登录/注册后可看大图


[b]条件分支语句
[/b]
如果要把条件分支语句细分的话,应该可以分为 3 种形式,以下是这 3 种形式的详细讲解。

if 语句

if 语句是单条件分支语句,即根据一个条件来控制程序执行的流程。
if 语句的语法格式如下:
if(表达式){
        若干语句
}
关于 if 语句的几点说明:

在 if 语句中,关键字 if 后面的一对小括号 ( ) 内的表达式的值必须是 boolean 类型,当值为 true 时,执行紧跟着的复合语句,结束当前 if 语句的执行;如果表达式的值为 false,结束当前 if 语句的执行。

需要注意的是,在 if 语句中,如果复合语句中只有一条语句,{ } 可以省略不写,但为了增强程序的可读性,最好不要省略(这是一个很好的编程习惯)。一定要警戒自己哦。

在下面的例子中,将变量 a、b、c 中的数值按大小顺序进行互换(从小到大排列)。

运行效果如下:

asc_Operation.gif

例子代码如下:

asc_Operation.java
public class asc_Operation{
        public static void main(String args[]){
                int a = 9,b = 5,c = 7,t = 0;
                if(b < a){
                        t = a;
                        a = b;
                        b = t;
                }
                if(c < a){
                        t = a;
                        a = c;
                        c = t;
                }
                if(c < b){
                        t = b;
                        b = c;
                        c = t;
                }
                System.out.println("a = " + a + ",b = " + b + ",c = " + c );
        }
}
if-else 语句

if-else 语句是单条件分支语句,即根据一个条件来控制程序执行的流程。
if-else 语句的语法格式如下:
if(表达式){
        若干语句
}
else{
        若干语句
}
关于 if-else 语句的几点说明:

在 if-else 语句中,关键字 if 后面的一对小括号 ( ) 内的表达式的值必须是 boolean 类型,当值为 true 时,执行紧跟着的复合语句,结束当前 if-else 语句的执行;如果表达式的值为 false,则执行关键字 else 后面的的复合语句,结束当前 if-else 语句的执行。

下面是有语法错误的 if-else 语句:
if(x > 0)
        y = 10;
        z = 20;
else
        y = -100;
正确的写法是:
if(x > 0){
        y = 10;
        z = 20;
}
else
        y = -100;
需要注意的是,在 if-else 语句中,如果复合语句中只有一条语句,{ } 可以省略不写,但为了增强程序的可读性,最好不要省略(这是一个很好的编程习惯)。一定要警戒自己哦。

下面这个例子有两条 if-else 语句,其作用是根据成绩输出相应的信息,运行效果如下所示:

achievement_Info.gif

例子代码如下:

achievement_Info.java
public class achievement_Info{
        public static void main(String args[]){
                int math = 65,english = 85;
                if(math > 60){
                        System.out.println("数学及格了");
                }
                else{
                        System.out.println("数学不及格");
                }
                if(english > 90){
                        System.out.println("英语是优");
                }
                else{
                        System.out.println("英语不是优");
                }
                System.out.println("我在学习 if-else 语句");
        }
}
if-else if-else 语句

if-else if-else 语句是多条件分支语句,即根据多个条件来控制程序执行的流程。
if-else if-else 语句的语法格式如下:
if(表达式){
        若干语句
}
else if(表达式){
        若干语句
}        
.
.
else{
        若干语句
}
if-else if-else 语句中的 else 部分是可选项,如果没有 else 部分,当所有表达式的值都为 false 时,结束当前 if-else if-else 语句的执行(该语句什么也没做)。

需要注意的是,在 if-else if-else 语句中,如果复合语句中只有一条语句,{ } 可以省略不写,但为了增强程序的可读性,最好不要省略(这是一个很好的编程习惯)。一定要警戒自己哦(这么重要的事不要让人重复 3 遍,省略的去开枪自杀 玩笑玩笑)。


【特别注意】贴子中的栗子希望鱼油们能自觉的手动敲上去,不要单纯的复制粘贴保存,然后编译运行。





评分

参与人数 1鱼币 +5 贡献 +3 收起 理由
alltolove + 5 + 3 感谢楼主无私奉献!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-1-16 15:59:27 | 显示全部楼层
看一下

评分

参与人数 1鱼币 +5 收起 理由
零度非安全 + 5 热爱鱼C^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-1-16 16:12:16 | 显示全部楼层

加油,么么哒!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-1-20 14:23:46 | 显示全部楼层
写得非常基础,堪称入门教科书。

评分

参与人数 1鱼币 +5 收起 理由
零度非安全 + 5 挑战作业入门费^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-1-20 14:29:52 | 显示全部楼层
小小七 发表于 2017-1-20 14:23
写得非常基础,堪称入门教科书。

嗯,是非常基础,为了照顾广大鱼油们,所以尽量简单易懂。若你有能力,可以来挑战我出的课后作业题哟!

http://bbs.fishc.com/forum.php?mod=viewthread&tid=81711&extra=page%3D1%26filter%3Dtypeid%26typeid%3D638
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-20 13:33:30 | 显示全部楼层
讲解的很细致,一定不会省略{}的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-12 09:04:37 | 显示全部楼层
排版越来越赞喽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-17 14:02:09 | 显示全部楼层
012 打卡
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-15 21:11:00 | 显示全部楼层
谢谢讲解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 02:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表