关于java中的if语句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于java中的if语句相关的知识,希望对你有一定的参考价值。

java中的if语句,例如:if(number<10)... 这个很好理解 ,但是 if(boolean)... 里面一个boolean值我就不大理解, 这个if语句的初始条件是boolean吗,还是固定的true

boolean是指布尔型的值,对于number<10这个表达式,假设number=9,那么number<10对应的布尔值就是true,假设number=11,那么number<10对应的布尔值就是false,也就是说if后面的括号里只要是个布尔值就行,举个例子,说明两者的共同之处

if(number<10)...
等价于
boolean b;
b=number<10;
if(b)...

不明白的话继续问追问

public void findFile(File file)
if(file.isFile)
//我想问的就是这个: isFile() 默认的是true还是false?



呵呵 谢谢你们啦 (~ o ~)~zZ

追答

isFile()没有默认值的说法,如果file是文件,那么就是true,如果file是目录,那么就是false

参考技术A if是条件判断,如果不满足条件的话,执行else;

int i =5;
if(i==4)//判断是否为4
System.out.println(“这个数是:4”);//如果是,输出结果。
else
System.out.println(“这个数是:”+i);//如果不是,输出这个数。
参考技术B 阿勇java:
不是这样的,如果在此之前有return语句的话就可能不执行,像你的代码中
if
(key==arr[x])

return
x;

如果这个判断成立的话就会走return
x。方法也就到此结束,就不好走return
-1了
参考技术C 是不是true看你前面定义的boolean 值是不是true啊。你这样写是错的。boolean本身是一个数据类型怎么可以把boolean扔进括号的?
是这样的:public boolean b = true;
if(b)
等同于if(true)
参考技术D if()括号里主要是看里面的参数,这个boolean是布尔型,只有true,false两种情况,就得看前面执行的boolean函数了

Java中的语句

一、if语句

1.if条件语句

语法:

 技术分享

注意哦:如果 if 条件成立时的执行语句只有一条,是可以省略大括号滴!但如果执行语句有多条,那么大括号就是不可或缺的喽~~

2.if...else语句

if...else 语句的操作比 if 语句多了一步:  当条件成立时,则执行 if 部分的代码块; 条件不成立时,则进入 else 部分。

语法:

技术分享

3.多重 if 语句

在条件 1 不满足的情况下,才会进行条件 2 的判断;当前面的条件均不成立时,才会执行 else 块内的代码。

语法:

 技术分享

当需要判断的条件是连续的区间时,使用多重 if 语句是非常方便滴!

4.嵌套if语句

只有当外层 if 的条件成立时,才会判断内层 if 的条件。例如,活动计划的安排,如果今天是工作日,则去上班,如果今天是周末,则外出游玩;同时,如果周末天气晴朗,则去室外游乐场游玩,否则去室内游乐场游玩。

语法:

 技术分享

 

二、switch语句

当需要对选项进行等值判断时,使用 switch 语句更加简洁明了。例如:根据考试的名次,给予前 4 名不同的奖品。第一名,奖励笔记本一台;第二名,奖励 IPAD 2 一个;第三名,奖励移动电源一个;最后一名奖励 U 盘一个。

语法:

技术分享

执行过程:当 switch 后表达式的值和 case 语句后的值相同时,从该位置开始向下执行,直到遇到 break 语句或者 switch 语句块结束;如果没有匹配的 case 语句则执行 default 块的代码。

如:

技术分享

不得不说的几点小秘密:

1、 switch 后面小括号中表达式的值必须是整型或字符型

2、 case 后面的值可以是常量数值,如 1、2;也可以是一个常量表达式,如 2+2 ;但不能是变量或带有变量的表达式,如 a * 2

3、 case 匹配后,执行匹配块里的程序代码,如果没有遇见 break 会继续执行下一个的 case 块的内容,直到遇到 break 语句或者 switch 语句块结束 

4、 可以把功能相同的 case 语句合并起来,如

技术分享

5、 default 块可以出现在任意位置,也可以省略

 

三、while语句

语法:

 技术分享

执行过程:

< 1 >、 判断 while 后面的条件是否成立( true / false )

< 2 >、 当条件成立时,执行循环内的操作代码 ,然后重复执行< 1 >、< 2 >, 直到循环条件不成立为止

特点:先判断,后执行

 

四、do while 语句

语法:

 技术分享

执行过程:

<1>、 先执行一遍循环操作,然后判断循环条件是否成立

<2>、 如果条件成立,继续执行< 1 > 、< 2 >,直到循环条件不成立为止

特点: 先执行,后判断

由此可见,do...while 语句保证循环至少被执行一次!

 

五、for循环

语法: 

技术分享

执行过程:

<1>、 执行循环变量初始化部分,设置循环的初始状态,此部分在整个循环中只执行一次

<2>、 进行循环条件的判断,如果条件为 true ,则执行循环体内代码;如果为 false ,则直接退出循环

<3>、 执行循环变量变化部分,改变循环变量的值,以便进行下一次条件判断

<4>、 依次重新执行< 2 >、< 3 >、< 4 >,直到退出循环

特点:相比 while 和 do...while 语句结构更加简洁易读

需要留心的几个小细节:

1、 for 关键字后面括号中的三个表达式必须用 “;” 隔开,三个表达式都可以省略,但 “;” 不能省略。

    a. 省略“循环变量初始化”,可以在 for 语句之前由赋值语句进行变量初始化操作,

    b. 省略“循环条件”,可能会造成循环将一直执行下去,也就是我们常说的“死循环”现象,

在编程过程中要避免“死循环”的出现,因此,对于上面的代码可以在循环体中使用 break 强制跳出循环(关于 break 的用法会在后面介绍)。

    c. 省略“循环变量变化”,可以在循环体中进行循环变量的变化

 

2、 for 循环变量初始化和循环变量变化部分,可以是使用 “,” 同时初始化或改变多个循环变量的值,如:

技术分享

代码中,初始化变量部分同时对两个变量 i 和 j 赋初值,循环变量变化部分也同时对两个变量进行变化

 

3、 循环条件部分可以使用逻辑运算符组合的表达式,表示复杂判断条件,但一定注意运算的优先级,如:

技术分享

代码中,必须同时满足变量 i 小于 10 ,并且 i 不等于 5 时才会进行循环,输出变量 i 的值。

 

六、break-continue循环跳转语句

在 Java 中,我们可以使用 break 语句退出指定的循环,直接执行循环后面的代码。

continue 的作用是跳过循环体中剩余的语句执行下一次循环。

例如,打印 1--10 之间所有的偶数,使用 continue 语句实现代码为:

技术分享

运行结果:

技术分享

 

七、多重循环

 

循环体中包含循环语句的结构称为多重循环。三种循环语句可以自身嵌套,也可以相互嵌套,最常见的就是二重循环。在二重循环中,外层循环每执行一次,内层循环要执行一圈。

 

如下所示:

 

技术分享

 

例如:使用 * 打印长方形:

 

技术分享

 

实现代码为:

 

技术分享

 

执行流程:当 i = 1 时,外层循环条件成立,进入内层循环,开始打印第一行内容。此时, j 从 1 开始,循环 8 次,内层循环结束后换行,实现第一行 8 个 * 的输出。接下来返回外层循环 i 变为 2 ,准备打印下一行,依此类推,直到完成长方形的打印。

 

 

以上是关于关于java中的if语句的主要内容,如果未能解决你的问题,请参考以下文章

关于java里的IF..ELSE IF..ELSE语句,一定要加ELSE吗?

关于使用Java中的for循环和if语句打印空心菱形的详细分析(也算是通过重新梳理一遍来加深自己的理解吧!)

java程序,关于SQL语句的问题。

Java基础6-控制语句

关于java中的一些循环

关于sql语句添加where条件问题,用java语句