一、Boolean值
在 Java 中,boolean 类型的变量用于表示布尔值,即 true 和 false。这些布尔值通常作为条件表达式的结果,用于控制程序的流程。布尔变量可以在条件语句(如 if、while、for 等)中直接使用,也可以作为逻辑运算的结果。
public class Condition {
public static void main(String[] args){
int one = 1;
int tow = 2;
boolean isSame = one == tow;
System.out.println("isSame:"+ isSame); //false
}
}
二、Boolean运算符
Boolean运算符主要包括以下内容:
- ==运算和equals
在 Java 中,== 和 equals 都可以用于比较对象,但它们的行为和用途有所不同。了解它们的区别对于编写正确的代码非常重要。
== 运算符用于比较两个对象的引用是否相同,即它们是否指向内存中的同一个对象。对于基本数据类型,== 比较的是它们的值。
public class Condition {
public static void main(String[] args){
int one = 1;
int tow = 2;
//布尔运算
boolean result;
result = one == tow;
System.out.println(result); //false
String i= "1";
String s= "1";
result = i == s;
System.out.println(result); //true
//判断对象
String obj1 = new String("obj1");
String obj2 = new String("obj2");
result = obj1 ==obj2;
System.out.println(result);//false
}
}
但是注意:使用==时必须保证两个基本数据类型相同,否则就会报错!
public class Condition {
public static void main(String[] args){
int one = 1;
String s= "1";
//布尔运算
boolean result;
result = one == s;
System.out.println(result); //false
}
}
-------------------------------------------------------
java: 二元运算符 '==' 的操作数类型错误
第一个类型: int
第二个类型: java.lang.String
equals 方法用于比较两个对象的内容是否相同。默认情况下,Object 类的 equals 方法的行为与 == 相同,即比较对象的引用。然而,许多类(如 String、Integer 等)都重写了 equals 方法,使其比较对象的内容而不是引用。
public class Condition {
public static void main(String[] args){
//判断对象
String obj1 = new String("obj1");
String obj2 = new String("obj1");
//使用==
result = obj1 ==obj2;
System.out.println(result);//false
//使用equals
result = obj1.equals(obj2);
System.out.println(result);//true
}
}
- 其他运算符
result = one>tow; //false --大于
result = one < tow; //true --小于
result = one>=1; //true --大于等于
result = tow<=2; //true --小于等于
result = one!=tow; //true --不等于
result = one>tow || one<tow; //true --逻辑或(一真则真,全假则假)
result = one>tow && one<tow; //false --逻辑与(一假则假,全真为真)
result = !result; // true --逻辑非(取反)
三、条件语句
Java代码中可以使用条件语句在不同条件下执行不同的逻辑;常见的条件语句包括:if-else、switch、三目运算符;
- if-else条件判断语句
public class Conditionalstatement {
public static void main(String[] args){
int a = 1;
int b = 2;
if(a==b){
System.out.println("a等于b");
}else{
System.out.println("a不等于b");
}
}
}
// 输出:a不等于b
if-else语句也可以去除{},但if和else后只能有一行语句;
public class Conditionalstatement {
public static void main(String[] args){
int a = 1;
int b = 2;
if(a==b) System.out.println("a等于b");
else System.out.println("a不等于b");
}
}
// 输出:a不等于b
同时有多个判断分支时可以使用if-else-if
public class Conditionalstatement {
public static void main(String[] args){
int a = 1;
int b = 2;
if(a>b){
System.out.println("a大于b");
}else if(a==b){
System.out.println("a等于b");
}else{
System.out.println("a小于b");
}
}
}
// 输出:a小于b
- switch语句
switch语句通过判断条件选择执行代码块;switch可以有效替代if-else-if;
public class Conditionalstatement {
public static void main(String[] args){
int num = 3;
switch (num){
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
case 3:
System.out.println("3");
break;
default:
System.out.println("其他");
}
}
}
// 输出:3
break:关键字用于在执行case代码块中的相关逻辑后,跳出switch语句。
default:关键字是在判断条件不满足所有case时执行。
- 三目运算符
三目运算符写法简单,主要用于简单的逻辑判断;
public class Conditionalstatement {
public static void main(String[] args){
int num = 3;
String str = num == 3 ? "num等于3" : "num不等于3";
System.out.println(str);
}
}
// 输出:num等于3
恭喜完成条件语句的学习!