使用条件语句
条件语句用于处理程序将执行某些操作的条件,深入理解程序设计中的逻辑的第一步,特别讨论关系运算符和逻辑运算符、if 语句、if else 语句和 switch case 语句,以及如何使用 Java GUI 实现所有这些条件语句。
关系运算符和逻辑运算符
- 关系运算符
关系运算符是用于比较两个或多个操作数的运算符,可以应用于数字数据和字符串或对象。
1.运算符使用范围
所有关系运算符都可以用于数值数据或字符串数据。无论是整数还是浮点类型的数值数据。
2.运算符的存储和转换
①要使用关系运算符存储操作结果,我们需要一个 Boolean 类型的变量。
②若要在文本字段中显示结果,必须使用以下代码执行从 boolean 到 string 的类型转换:Boolean.toString(result),toUpperCase()函数的作用是将字符串转换为大写字母。
3.String数据类型
①字符串数据存储在变量中,那么使用这两个运算符的字符串比较将失败,因为String数据类型的变量是一个对象。
②将变量与 String 数据类型进行比较需要特殊的函数,String 类提供用于字符串比较的方法或函数。 - 逻辑运算符
程序中的决策通常涉及多个条件,要在程序中表示条件,除了使用关系运算符外,还必须使用逻辑运算符。
1.或、与逻辑
①逻辑与:相当于生活中说的“并且”,就是两个条件都同时成立的情况下“逻辑与”的运算结果才为“真”。
②逻辑或:相当于生活中的“或者”,当两个条件中有任一个条件满足,“逻辑或”的运算结果就为“真”。
IF语句
-
IF语句判断
用来判定所给定的条件是否满足,根据判定的结果决定执行给出的两种操作之一或判断是否为空值。if 语句的使用是在存在需要程序执行某些命令块的条件时。此语句通常也用于处理程序中的错误。使用此语句,程序将避免意外出错。
1.if语句的括号
if语句的括号区别在于使用括号将语句放在 if 语句的主体中。而不使用方括号放置语句。
2. ListSelection事件
事件类型是 ListSelection,用于在选择列表中的项时执行某些操作。
3.获取索引与返回整数值
代码 listColor1.getSelectedlndex()用于获取列表中选定项的索引。JList 类中的 getSelectedlndex()方法返回一个整数值。 -
使用单选按钮进行选择
在 GUI 编程中,通常用于进行选择的控件之一是 Radio Button。Radio Button用于为程序进行选项。在 Java 编程中,单选按钮是从 JRadioButton 类发出的。
1. JRadioButton 类
JRadioButton 类中的 isSelected()方法用于检查单选按钮是否被选中。
2.Button Group控件
Button Group控件对单选按钮进行分组。通过使用“Button Group”对单选按钮进行分组,用户只能选择一个单选按钮选项。使用按钮组对单选按钮进行分组是使用bgBook.add()完成的。 -
控制输入类型
输入数字字符的文本字段中的输入类型,必须向文本字段中添加 KeyTyped 的事件。 -
读取每段中的字符
读取在文本字段中输入的每个字符,使用代码evt.getKeyChar()。
IF-ELSE 语
-
IF-else语句
if else 语句提供了两个语句块,当条件为 true 和 false 时将执行这两个语句块。如果条件为 true,则将执行 if 主体中的语句。而 else 主体中的语句将在条件为 false 时执行。
-
使用复选框进行选择
除了 Radio Button 之外,Java 还提供了其他组件,这些组件可用于选择 CheckBox。Java 提供 JCheckBox 类来处理 Check Box 控件。 -
isSelected()方法
JCheckBox 类中找到的 isSelected()方法用于确定复选框是否被选中。此方法返回布尔类型的值。如果选中复选框,则返回值为 true;如果未选中,则返回值为 false。此方法用作 if 语句中的条件。 -
有许多条件的 IF-ELSE 语句
If-else 语句提供了另一种格式,当程序中存在多个条件时,可以使用这种格式。
- IF-else原则
if-else过程将从第一个 if 条件开始执行。如果第一个条件为真,那么将执行第一个 if 中的语句。如果第一个条件是 false的。然后继续检查第二种情况以此类推。
SWITCH-CASE
- switch-case语语句
SWITCH-CASE的函数与 if 语句和 if-else 语句相同,但此语句的格式不同。在 switch-case 语句中,选项基于 condition 的值。switch 语句中的每个 case 都表示条件的值。如果 condition 的值在 cases 中不存在,那么程序将执行 default 主体中的语句。
- switch变量类型
swtich()变量类型只能是int、short、char、byte和enum类型(JDK 1.7 之后,类型也可以是String了)。 - cases判断
①若当前匹配成功的case不存在break,则从当前case开始,依次返回后续case的返回值,直到遇到break,跳出判断。
②当每一个case都不存在break时,匹配成功后,从当前case开始,依次返回后续所有case的返回值。
③当每一个case都不存在break时,JVM并不会顺序输出每一个case对应的返回值,而是继续匹配,匹配不成功则返回默认case。
因此switch case执行时,一定会先进行匹配,匹配成功返回当前case的值,再根据是否有break,判断是否继续输出,或是跳出判断。