java的关系运算符共6个:==、!=、>、=、

Java 中的关系运算符本身不执行判断动作,而是**生成布尔结果(true 或 false)**,这个结果被用在 if、while、for 等需要逻辑条件的地方,从而驱动程序的分支或循环行为。
关系运算符有哪些及基本用法
Java 有 6 个关系运算符:
- ==:判断左右操作数是否相等(注意不是赋值 =)
- !=:判断左右操作数是否不相等
- >:左边是否大于右边
- :左边是否小于右边
- >=:左边是否大于等于右边
- :左边是否小于等于右边
它们都要求操作数类型兼容。数值类型(int、double 等)可互相比较;char 也可参与大小比较(按 Unicode 值);boolean 只能用 == 或 != 判断真假是否相同;引用类型(如 String、Object)用 == 比较的是内存地址,不是内容。
在 if 语句中做条件判断
这是最典型的使用场景。关系表达式写在 if 的小括号里,JVM 先计算它得到 true 或 false,再决定是否执行大括号内的代码:
int score = 85;
if (score >= 60) {
System.out.println("及格了");
} else {
System.out.println("不及格");
}
上面 score >= 60 是一个关系表达式,运行时算出 true,于是进入 if 分支。
Java Maven 项目审查工作流的通用输入处理。当 Java Maven 项目以 ZIP压缩包或 GitLab 仓库 URL 形式提供且需要...时使用。
多个条件可组合,比如:
if (age >= 18 && age —— 年龄在劳动年龄段-
if (str != null && !str.isEmpty())—— 字符串非空(先防 null 再判内容)
字符串内容比较不能用 ==
这是新手最容易出错的地方。String 是引用类型,str1 == str2 只有当两个变量指向**同一个对象**时才为 true,即使内容一样也可能返回 false:
String a = "hello";
String b = new String("hello");
System.out.println(a == b); // false(地址不同)
System.out.println(a.equals(b)); // true(内容相同)
所以判断字符串内容是否相等,必须用 equals() 方法;判断是否为 null 可用 ==,但内容比较一律避开 ==。
常见陷阱与注意事项
使用关系运算符时要注意几个关键点:
- 不要把
=(赋值)误写成==(相等),尤其在 if 条件里:if (x = 5)是语法错误(因为赋值表达式返回 int,而 if 需要 boolean);但if (x == 5)才是合法判断 - 浮点数(float/double)慎用 == 直接比较,因精度问题可能失准,推荐用差值绝对值小于某个极小值来判断近似相等
- char 和 int 可混用比较,例如
'a' 或 <code>'0' == 48都合法(char 本质是无符号 16 位整数) - 关系运算符优先级低于算术运算符,所以
a + b > c * d不用额外加括号,系统会先算加法和乘法,再比较
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










