服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - JAVA教程 - java的if else语句入门指南(推荐)

java的if else语句入门指南(推荐)

2020-05-12 12:25jingxian JAVA教程

下面小编就为大家带来一篇java的if else语句入门指南(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

条件语句,是程序中根据条件是否成立进行选择执行的一类语句,这类语句在实际使用中,难点在于如何准确的抽象条件。例如实现程序登录功能时,如果用户名和密码正确,则进入系统,否则弹出“密码错误”这样的提示框等。

本部分对于条件语句的介绍,重点在于语法讲解和基本的使用,更详细的使用参看后续的综合示例部分。

在Java语言中,条件语句主要有两类语法:if语句和switch语句。

1 、if语句

if关键字中文意思是如果,其细致的语法归纳来说总共有三种:if语句、if-else语句和if-else if-else语句,下面分别进行介绍。

1.1 if语句

该类语句的语法格式为:if(条件表达式)

功能代码;语法说明:if是该语句中的关键字,后续紧跟一对小括号,该对小括号任何时候不能省略,小括号的内部是具体的条件,语法上要求该表达式结果为boolean类型。后续为功能的代码,也就是当条件成立时执行的代码,在程序书写时,一般为了直观的表达包含关系,功能代码一般需要缩进。

需要特别注意的是:

1、 这里的功能代码只能是一行,关于多行结构的功能代码,后续将说明。

2、 if(条件表达式)后续一般不书写分号if语句的执行流程为:如果条件表达式成立,则执行功能代码,如果条件表达式不成立,则不执行后续的功能代码。

示例代码:

int a = 10;

if(a >= 0)

System.out.println(“a是正数”);

if( a % 2 == 0)

System.out.println(“a是偶数”);

在该示例代码中,第一个条件是判断变量a的值是否大于等于零,如果该条件成立则执行输出,第二个条件是判断变量a是否为偶数,如果成立也输出。

注意以下代码的执行流程:

int m = 20;

if( m > 20)

m += 20;

System.out.println(m);

按照前面的语法格式说明,只有m+=20;这行代码属于功能代码,而后续的输出语句和前面的条件形成顺序结构,所以该程序执行以后输出的结果为20.如果当条件成立时,需要执行的语句有多句,则可以使用语句块来进行表述,语法格式如下:

if(条件表达式){

功能代码块;

}

使用这种语法格式,使用一个代码块来代替前面的功能代码,这样可以在代码块内部书写任意多行的代码,而且也使整个程序的逻辑比较清楚,所以在实际的代码编写中推荐使用该种逻辑。

1.2 if-else语句

if-else语句实现了封闭的条件,在程序中使用的更加常见。其中else关键字的作用是“否则”,即条件不成立的情况。

if-else语句的语法格式如下:

if(条件表达式)

功能代码1;

else

功能代码2;

语法说明:其中前面的部分和if语句一样,else部分后面是功能的代码,按照该语法格式,功能代码只能有一句。

执行顺序:如果条件成立,则执行if语句中的功能代码1,否则执行else中的功能代码2.示例代码为:

int n = 12;

if(n % 2 != 0)

System.out.println(“n是奇数”);

else System.out.println(“n不是奇数”);

则因为n%2的值是0,条件不成立,则执行else语句的代码,程序输出“n不是奇数”。

在实际使用时,为了结构清楚,以及可以在功能代码部分书写多行代码,一般把功能代码部分使用代码块,则语法格式为:

if(条件表达式){

功能代码块

}else{

功能代码块

}

当程序中有多个if时,else语句和最近的if匹配。示例代码:

if(条件1)

功能代码1;

if(条件2)

功能代码2;

else功能代码3;

则这里的else语句和条件2对应的if语句匹配,前面的条件1是一个独立的语句。在实际代码中,可以使用大括号使整个程序的结构更加清楚。

对于if-else语句来说,因为if的条件和else的条件是互斥的,所以在实际执行中,只有一个语句中的功能代码会得到执行。

在实际开发中,有些公司在书写条件时,即使else语句中不书写代码,也要求必须书写else,这样可以让条件封闭。这个不是语法上必须的。

1.3 if-else

if-else语句在现实中,有些时候的条件不是一个,而是一组相关的条件,例如将阿拉伯数字转换为中文大写,根据分数转换为对应的等级等,都是多条件的结构,在程序中为了避免写多个if语句的结构,提供了一类专门的多分支语句,这就是if-else if-else语句。

if-else if-else语句的语法格式为:

if(条件1)

功能代码1;

else if(条件2)

功能代码2;

else if(条件3)

功能代码3;
……

else功能代码;

语法说明:

1、 else if是else和if两个关键字,中间使用空格进行间隔。

2、 条件1到条件n都是boolean类型

3、 else if语句可以有任意多句

4、 最后的else语句为可选

5、 如果功能代码部分不是语句块,也就是不用大括号,就只能写一句。

执行流程:当条件1成立时,则执行功能代码1;当条件1不成立且条件2成立时,则执行功能代码2;如果条件1、条件2都不成立且条件3成立,则执行功能代码3,依次类推,如果所有条件都不成立,则执行else语句的功能代码。其执行流程的流程图如上所示。

下面是一个实现根据月份的值,输出该月份包含的日期数,2月份全部输出28,不考虑闰年的示例代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
int month = 3;
 
  int days = 0; //日期数
 
  if(month == 1){
 
  days = 31;
 
  }else if(month == 2){
 
  days = 28;
 
  } else if(month == 3){
 
  days = 31;
 
  } else if(month == 4){
 
  days = 30;
 
  } else if(month == 5){
 
  days = 31;
 
  } else if(month == 6){
 
  days = 30;
 
  } else if(month == 7){
 
  days = 31;
 
  } else if(month == 8){
 
  days = 31;
 
  } else if(month == 9){
 
  days = 30;
 
  } else if(month == 10){
 
  days = 31;
 
  } else if(month == 11){
 
  days = 30;
 
  } else if(month == 12){
 
  days = 31;
 
  }
 
  System.out.println(days);

再来看一个示例代码,该代码的功能是实现将百分制的成绩转换为A、B、C、D和E,代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
int score = 87;
 
  if(score >= 90){
 
  System.out.println(‘A');
 
  } else if(score >= 80){
 
  System.out.println(‘B');
 
  } else if(score >= 70){
 
  System.out.println(‘C');
 
  } else if(score >= 60){
 
  System.out.println(‘D');
 
  } else{
 
   System.out.println(‘E');
 
  }

从该代码中可知,每个else if语句在书写时是有顺序的,在实际书写时,必须按照逻辑上的顺序进行书写,否则将出现逻辑错误。

if-else if-else语句是Java语言中提供的一个多分支条件语句,但是在判断某些问题时,会书写的比较麻烦,所以在语法中提供了另外一个语句——switch语句来更好的实现多分支语句的判别。

以上这篇java的if else语句入门指南(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

延伸 · 阅读

精彩推荐
  • JAVA教程Java编程实现判断网上邻居文件是否存在的方法

    Java编程实现判断网上邻居文件是否存在的方法

    这篇文章主要介绍了Java编程实现判断网上邻居文件是否存在的方法,涉及Java针对路径转换及字符串操作的相关技巧,需要的朋友可以参考下 ...

    5iasp5192020-01-13
  • JAVA教程JDBC示例代码

    JDBC示例代码

    本教程提供了如何创建一个简单的JDBC应用程序的示例。演示如何打开一个数据库连接,执行SQL查询,并显示结果 ...

    java教程网4242019-11-14
  • JAVA教程JAVA实现线程的三种方法

    JAVA实现线程的三种方法

    这篇文章介绍了JAVA实现线程的三种方法,有需要的朋友可以参考一下 ...

    java开发网2432019-10-14
  • JAVA教程java对象转换String类型的三种方法

    java对象转换String类型的三种方法

    在很多情况下我们都需要将一个对象转换为String类型。一般来说有三种方法可以实现:Object.toString()、(String)Object、String.valueOf(Object)。下面对这三种方法一...

    java教程网4792019-10-21
  • JAVA教程Java中成员方法与成员变量访问权限详解

    Java中成员方法与成员变量访问权限详解

    在Java学习过程中,在写类经常为用到public,private和protected,我个人的经验是一般类的成员变量都是用private,方法用public,类的内部用protected方法,如果是...

    谷龙1212020-01-03
  • JAVA教程浅谈java中Map的用法

    浅谈java中Map的用法

    Map简介:将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。此接口取代 Dictionary 类,后者完全是一个抽象类,而不是一个...

    hebedich1692020-01-08
  • JAVA教程java图形界面编程之模拟血压计

    java图形界面编程之模拟血压计

    本文主要介绍了java基于图形处理的模拟血压计,创新实验项目的部分代码,作为平时练习用。 ...

    java教程网2542019-11-05
  • JAVA教程全面解析Java8观察者模式

    全面解析Java8观察者模式

    这篇文章主要为大家全面解析Java8观察者模式,通过在 Java8 环境下实现观察者模式的实例,进一步介绍了什么是观察者模式、专业化及其命名规则,感兴趣...

    仲浩2942020-04-02