运算符前言
在学习Java基础的时候都有了解过运算符,运算符把语句连接成更复杂的复杂语句。运算符是编程语言中用于执行各种计算和操作的符号或关键字。在Java中,运算符可以分为数学运算符、关系运算符、逻辑运算符、位运算符等多种类型。通过使用运算符,我们可以对变量和常量进行各种操作,实现数值计算、条件判断、逻辑运算和位操作等功能。了解和掌握Java中的运算符对于编写高效、准确的代码至关重要。
运算符类型
普通逻辑运算符
概述
与运算符(&):两边的表达式都为true,则结果为true
或运算符(|):两边的表达式只要一个为true,则结果为true
非运算符(!):false取反为true,true取反为false,例如 !false就是true
异或运算符(^):两边的表达式只要不一样,则结果就是true
实例
public class OperatorTest { public static void main(string[] args){ system.out.printIn(5>3 & 5>2) \\结果为true system.out.printIn(5>3 & 5>6) \\false system.out.printIn(5>3 | 5>6) \\true system.out.printIn(!false) \\true system.out.printIn(!true) \\false system.out.printIn(true ^ false) \\true system.out.printIn(true ^ true) \\flase system.out.printIn(false^ false) \\flase }
应用场景
逻辑运算符两边的表达式都需要进行判断,即使通过一个表达式就可以知道最终的结果但是还是需要两个都进行比较的。所以当我们的逻辑表达式两边都需要进行判断的时候就可以选择普通的逻辑表达式
短路逻辑运算符
概述
短路与运算符(&&):和普通与运算是一致的
短路或运算符(||):和普通或运算是一致的
实例
public class OperatorTest { public static void main(string[] args){ int x = 10; int y = 8; system.out.printIn(x < y && ++x > y) \\结果为false } }
应用场景
短路运算符通过判断运算符一边的表达式就可以知道最终结果的话,就不会判断第二个表达式,这也就是叫做短路运算符的原因之一,从某种角度来看,短语更加的智能,由于后面的表达式可能不执行,所以执行的效率较高。
算术运算符
概述
用于执行基本的算术操作,包括加法(+)、减法(-)、乘法(*)、除法(/)、取余(%)等。
实例
int a = 10; int b = 5; int sum = a + b; // 加法运算,得到15 int difference = a - b; // 减法运算,得到5 int product = a * b; // 乘法运算,得到50 int quotient = a / b; // 除法运算,得到2 int remainder = a % b; // 取余运算,得到0
应用场景
算术运算符常用于进行数值计算,可以用于实现各种数学操作和公式计算。
关系运算符
概述
用于比较两个值的关系,包括等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)等。
实例
int a = 10; int b = 5; boolean isEqual = (a == b); // 判断a是否等于b,得到false boolean isNotEqual = (a != b); // 判断a是否不等于b,得到true boolean isGreater = (a > b); // 判断a是否大于b,得到true boolean isLess = (a < b); // 判断a是否小于b,得到false boolean isGreaterOrEqual = (a >= b); // 判断a是否大于等于b,得到true boolean isLessOrEqual = (a <= b); // 判断a是否小于等于b,得到false
应用场景
关系运算符常用于比较两个值的大小关系,可以用于条件判断和控制流程。
赋值运算符
概述
用于将值赋给变量,包括简单赋值(=)、加法赋值(+=)、减法赋值(-=)、乘法赋值(*=)、除法赋值(/=)等。
实例
int a = 10; int b = 5; a += b; // 等价于 a = a + b,将a加上b的值赋给a,得到15 a -= b; // 等价于 a = a - b,将a减去b的值赋给a,得到10 a *= b; // 等价于 a = a * b,将a乘以b的值赋给a,得到50 a /= b; // 等价于 a = a / b,将a除以b的值赋给a,得到10 a %= b; // 等价于 a = a % b,将a取余b的值赋给a,得到0
应用场景
赋值运算符用于将右侧的值赋给左侧的变量,可以简化赋值操作。
位运算符
概述
用于对二进制位进行操作,包括按位与(&)、按位或(|)、按位异或(^)、按位取反(~)、左移(<<)、右移(>>)等。
实例
int a = 5; // 二进制表示为 0101 int b = 3; // 二进制表示为 0011 int result1 = a & b; // 按位与运算,得到1 int result2 = a | b; // 按位或运算,得到7 int result3 = a ^ b; // 按位异或运算,得到6 int result4 = ~a; // 按位取反运算,得到-6 int result5 = a << 1; // 左移运算,得到10 int result6 = a >> 1; // 右移运算,得到2
应用场景
位运算符用于对二进制位进行操作,常用于位操作和位掩码运算。
条件运算符(三元运算符)
概述
条件运算符(三元运算符):用于根据条件选择不同的值,格式为条件 ? 值1 : 值2,如果条件为真,则返回值1,否则返回值2。
实例
int a = 10; int b = 5; int max = (a > b) ? a : b; // 如果a大于b,则返回a的值,否则返回b的值,得到10
应用场景
条件运算符可以根据条件选择不同的值,常用于简单的条件判断和赋值操作。
运算符总结
Java中的运算符是一种用于执行各种计算和操作的符号或关键字。它们可以分为数学运算符、关系运算符、逻辑运算符、位运算符等多种类型。数学运算符用于执行数值计算,关系运算符用于比较两个值的大小关系,逻辑运算符用于进行逻辑判断,位运算符用于对二进制位进行操作。通过合理地使用运算符,我们可以实现各种功能,如加减乘除、条件判断、循环控制、位操作等。在编写Java代码时,我们需要根据具体的需求和场景选择合适的运算符,并注意运算符的优先级和结合性,以确保代码的正确性和效率。熟练掌握Java中的运算符是成为一名优秀的Java程序员的重要基础。