boolean数据类型

要点提示 : boolean 数据类型声明一个具有值 true 或者 false 的变量 。

 

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

瞀告 : 相等的关系操作符是两个等号 ( = = ) , 而不是一个等号 ( =) , 后者是指斌值操作符 。

具有布尔值的变量称为布尔变量 ( boolean variable ) , boolean 数据类型用于声明布尔型变量 。 boolean 型变量可以是以下这两个值中的一个 : true 和 false 。

true 和 false 都是直接量 , 就像 10 这样的数字 。 它们被当作保留字一样 , 不能用做程序中的标识符 。

 

if语句

要点提示 : if 语句是一个结构 , 允许程序确定执行的路径 。

单分支 if 语句的语法如下 :

if(布尔表达式){

语句(组);

}

图 3 - la 所示的流程图展示 Java 如何执行 if 语句的语法 。 流程图是描述算法或者过程的图 , 以各种盒子显示步骤 , 并且通过箭头连接给出次序 。 处理操作显示在这些盒子中 , 连接它们的箭头代表控制流程 。 棱形的盒子表示一个布尔类型的条件 , 矩形盒子代表语句 。

if ( radius > - 0 ) {
     area = radius * radius * PI ;
     System . out . println ( " The area for the circle of radius " +radius +"is" + area ) ;

}

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

 注意 : 省略括号可以让代码更加简短 , 但是容易产生错误 。 当你返回去修改略去代码的时
候 , 容易忘记加上括号 。 这是一个常犯的错误 。

双分支 if - else 语句

要点提示 : if - else 语句根据条件是真或者是假 , 决定执行的路径 。

当指定条件为 true 时单分支 if 语句执行一个操作 。 而当条件为 false 时什么也不干 。但是 , 如果你希望在条件为 false 时也能执行一些动作 , 该怎么办呢 ? 你可以使用双分支if 语句 。 根据条件为 true 或 false , 双分支 if 语句可以指定不同的操作 。

下面是双分支 if
- else
语句的语法 :
if ( 布尔表达式 > {
布尔表达式为其时执行的语句 ( 组 ) ;
}
else {
布尔表达式为假时执行的语句 ( 组 ) ;
}

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

如果布尔表达式的计算结果为 true , 则执行条件为 true 时该执行的语句 ; 否则 , 执行条件为 false 时该执行的语句 。

嵌套的 if 语句和多分支 if - else 语句

要点提示 : if 语句可以在另外一个 if 语句中 , 形成嵌套的 if 语句 。

if 或 if - else 语句中的语句可以是任意合法的 Java 语句 , 甚至可以是其他的 if 或 if -else 语句 。 内层 if 语句称为是嵌套在外层 if 语句里的 。 内层 if 语句还可以包含其他的 if语句 ; 事实上 , 对嵌套的深度没有限制 。 例如 , 下面就是一个嵌套的 if 语句:

if ( i > k ) {
     if ( j > k ){
         System . out . println ( " i and » j are greater than k " ) ;
     }
     else{
     System . out . println ( " i is less than or equal to k");

}

语句 if ( j > k ) 被嵌套在语句 if ( i > k ) 内 。

嵌套的 if 语句可用于实现多重选择 。 例如 : 图 3 - 3 a 中所给出的语句使用了多重选择 ,根据分数给变量 grade 陚一个用字母表示的级别。

 

这个 if 语句的执行过程如图 34 所示 , 测试第一个条件 ( SCOre > 90.0 ) , 如果它为  true , 级 别 就 变 成 如 果 它 为 false , 就测试第二个条件 ( score > - 80.0 > 。 如果第二个条件为 true , 级 别 就 变 成 如 果 第 二 个 条 件 为 false , 则会继续测试第三个和剩余的条件 ( 如果有必要的话 ) , 直到遇到满足的条件 , 或者所有条件都为 false。 如果所有条件都为false, 级别就变成 ’ F、 注意 : 只有在前面的所有条件都为 false 时才测试下一个条件 。

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

 

图 3 - 3 a 中的 if 语句等价于图 3 _ 3 b 中的 if 语句 。 事实上 , 图 3 - 3 b 是推荐使用的多重选择 if 语句的书写风格 。 这种风格, 称为多分支 if - else 语句 , 可以避免深度缩进 , 并使程序易于阅读 。

产生随机数

要点提示 : 你可以使用 Math . randomO 来获得一个 0.0 到 1.0 之间的随机 double 值 , 不包括 1.0 。

 这样 , ( int ) ( Math . random ( ) * l 0 ) 会返回一个随机的一位整数 ( 即 0 到 9 之间的数 )

逻辑操作符

要点提示 : 逻辑操作符 ! 、 & & 、 丨丨和 A 可以用于产生复合布尔表达式 。

有时候 , 是否执行一条语句是由几个条件的组合来决定的 。 可以使用逻辑操作符组合这些条件 。 逻 辑 操 作 符( logical operator ) 也称为布尔操作符 ( boolean operator ) , 是对布尔值进行的运算 , 它会创建新的布尔值 。 表 3 - 3 列出了
布尔操作符清单 。 表 3 - 4 定义了非操作符 ( I ) 。 非操作符 ( I )对 true 取反是 false , 而 false 取反之后则是 true 。 表 3 - 5定义了与操作 < 4 & ) 。 当且仅当两个操作数都为 true 时 , 这' '两个布尔型操作数的与 ( & & ) 为 true 。 表 3 - 6 定义了或操作符 ( 丨丨 ) , 当至少有一个操作数为true 时 , 两个布尔型操作数的或 ( 丨丨 ) 为 true 。 表 3 - 7 定义了异或操作符 ( M 。 当且仅当两个操作数具有不同的布尔值时 , 两个布尔型操作数的异或 ( △ ) 才为 true 。 注意 , plAp 2 等同于 pl ! > p 20

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

switch 语句

要点提示 : switch 语句基于变量或者表达式的值来执行语句 。

根据变量status 的值 , 会有四种计算税金的情况 。 为了全面考虑所有的情况 , 需要使用嵌套的 if 语句 。 过多地使用嵌套的 if 语句会程序很难阅读 。 Java 提供 switch 语句来有效地处理多重条件的问题 。 可以使用下述 switch 语句替换程序清单 3 - 5 中的嵌套 if 语句 :
switch ( status ) {
    case 0 : compute tax for single filers ;
    break ;
    case 1 : compute tax for married jointly or qualifying widow ( er ) ;
    break ;
    case 2 : compute tax for married filing separately ;
    break ;
    case B : compute tax for head of household ;
    break ;
    default : System . out . println ( " Error : invalid status " ) ;

    System.exit(1);

}

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

   

 switch 语句的完整语法 :

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

switch 语句遵从下述规则 :
① switch 表达式必须能计算出一个 char 、 byte 、 short , int 或者 String 型值 , 并且必须总是要用括号括住 。 ( char 和 String 类型将在下一章介绍 。 )
② valuel , ... , valueN 必须与 switch 表 达 式 的 值 具 有 相 同 的 数 据 类 型 。 注意 :valuel , valueN 都是常量表达式 , 也就是说这里的表达式是不能包含变量的 , 例如 , 不允许出现 1 + X 。
③ 当 switch 表达式的值与 case 语句的值相匹配时 , 执行从该 case 开始的语句 , 直到遇到一个 break 语句或到达该 switch 语句的结束。
④ 默认情况 ( default ) 是可选的 , 当没有一个给出的 case 与 switch 表达式匹配时 ,用来执行该操作 。
⑤ 关键字 break 是可选的 。 break 语句会立即终止 switch 语句 。

瞥告 : 不要忘记在需要的时候使用 break 语句 。 一旦匹配其中一个 case , 就从匹配的case 处开始执行 , 直到遇到 break 语句或到达 switch 语句的结束 。 这种现象称为落空行为 ( fall - through behavior )。

提示 : 为了避免程序设计错误 , 提高代码的可维护性 , 如果故意省略 break ,在 case 子句后添加注释是一个好的做法。

 

作业

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

boolean数据类型、if语句、产生随机数、逻辑操作符、switch 语句

 

 

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-07-20
  • 2021-11-29
  • 2021-05-13
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-04-06
  • 2022-12-23
  • 2021-07-07
  • 2022-12-23
  • 2022-12-23
  • 2021-12-15
  • 2022-02-22
相关资源
相似解决方案