in

理解Java中的运算符,附有示例

在java中,运算符构成了这种编程语言基础的重要部分。如果不能执行简单的操作,你就无法取得很大的进展。这就是为什么运算符是java的基础和重要组成部分,允许进行编程中最常见的操作。

进行计算、判断真假、确定关系,你都需要使用运算符。这不仅适用于java,也适用于其他所有编程语言。

在这篇博文中,我们将介绍java中最常用的运算符,以及一些示例,让你了解它们的工作原理。让我们开始吧!

什么是java运算符?

运算符在编程中经常被使用。基本上,运算符是允许你对一个或多个值(称为操作数)进行操作的符号。不管是赋值运算符(=)还是三元运算符(?),程序中经常会有大量的运算符。我们现在将介绍最常见的几种运算符。

算术运算符

顾名思义,算术运算符允许你进行数学运算。它们适用于任何数字数据类型。

此示例展示了算术、关系、逻辑、一元、三元和位运算符的作用。

©jingzhengli.com

加法(+)

加法运算符允许你将两个数相加。在这里,sum将是3和5的和:

int sum = 3 + 5; // sum将是8

它还可以用于连接(或添加)两个字符串。在这里,result变成了“hello ”和“world!”的连接。

string result = “hello ” + “world!”; // result将是“hello world!”

减法(-)

减法运算符允许你从一个数中减去另一个数。在这里,difference将是5和3的差:

int difference = 5 – 3; // difference将是2

乘法(*)

乘法运算符允许你将两个数相乘。在这里,product将是5和3的积:

int product = 5 * 3; // product将是15

除法(/)

除法运算符允许你将两个数相除。如果两个操作数都是整数,则将进行“地板除法”,即商将被取整。为了避免这种情况,至少有一个操作数必须是浮点数。在这里,quotient将是5和3的地板除法商:

int quotient = 5 / 3; // quotient将是1

取余(%)

取余运算符允许你对一个数进行模运算,即除以另一个数后得到的余数。在这里,remainder将是10模3的余数:

int remainder = 10 % 3; // remainder将是1

递增(++)

递增运算符将一个变量增加1。如果运算符在变量之前,变量将增加1,并返回增加后的值。然而,如果运算符在变量之后,将返回增加前的值。

int a = 5;
a++; // a将变成6

递减 (–)

递减操作符将变量减1。如果操作符在变量之前,变量将减1,并返回减少后的值。然而,如果操作符在变量之后,将返回减少之前的值。

int a = 5;
a–; // a将变成4

赋值运算符

赋值运算符 (=)

赋值运算符很简单:它允许你将一个值赋给一个变量。例如,如果你写:

int a = 5;

那么 a 的值将是5。

复合赋值运算符

赋值运算符可以与其他算术和位运算符结合使用(这些将在后面介绍)。这意味着你可以写成:

[变量] [复合赋值运算符] [操作数]

搞不清楚?这些例子应该会帮到你。这包括所有的复合赋值运算符:

int x = 10;
x += 5; // 等价于 x = x + 5; (x将变成15)

int y = 8;
y -= 3; // 等价于 y = y – 3; (y将变成5)

int z = 6;
z *= 2; // 等价于 z = z * 2; (z将变成12)

int a = 16;
a /= 4; // 等价于 a = a / 4; (a将变成4)

int b = 11;
b %= 3; // 等价于 b = b % 3; (b将变成2)

int c = 9;
c &= 3; // 等价于 c = c & 3; (c将变成1)

int d = 7;
d |= 5; // 等价于 d = d | 5; (d将变成7)

int e = 10;
e ^= 3; // 等价于 e = e ^ 3; (e将变成9)

int f = 16;
f <<= 2; // 等价于 f = f << 2; (f将变成64)

int g = 32;
g >>= 3; // 等价于 g = g >> 3; (g将变成4)

int h = -16;
h >>>= 2; // 等价于 h = h >>> 2; (h将变成1073741819)

比较运算符

比较运算符比较两个操作数,并根据结果返回一个布尔值 (true 或 false)。

等于 (==)

等于运算符检查两个值是否相等。

int a = 5;
int b = 3;
boolean result = (a == b); // result将是false

不等于 (!=)

不等于运算符检查两个值是否不相等。

int a = 5;
int b = 3;
boolean result = (a != b); // result将是true

大于 (>)

大于运算符检查左操作数是否大于右操作数。

int a = 5;
int b = 3;
boolean result = (a > b); // result将是true

小于 (<)

小于运算符检查左操作数是否小于右操作数。

int a = 5;
int b = 3;
boolean result = (a < b); // 结果为false

大于或等于 (>=)

大于或等于运算符检查两个操作数是否相等,或者左操作数是否大于右操作数。

int a = 5;
int b = 3;
boolean result = (a < b); // 结果为false

小于或等于 (<=)

小于或等于运算符检查两个操作数是否相等,或者左操作数是否小于右操作数。

int a = 5;
int b = 3;
boolean result = (a <= b); // 结果为false

逻辑运算符

逻辑运算符对布尔值进行操作,并根据操作数之间的关系返回布尔值。注意,操作数不一定是字面上的布尔值(true false),它们通常是自己的表达式,其求值结果为布尔值。

逻辑与 (&&)

逻辑与运算符检查两个操作数是否都为true。

boolean a = true;
boolean b = false;
boolean result = (a && b); // 结果为false

逻辑或 (||)

逻辑或运算符检查两个操作数是否至少有一个为true。

boolean a = true;
boolean b = false;
boolean result = (a || b); // 结果为true

逻辑非 (!)

逻辑非运算符将操作数的真值取反。

boolean a = true;
boolean result = !a; // 结果为false

位运算符

位运算符是对数值进行位级操作的运算符。它们根据操作数的不同返回不同的数值。

位与 (&)

位与运算符返回一个数,其二进制位中,两个操作数的对应位都为1时,结果位为1,否则为0。

int a = 5;      // 二进制:00000101
int b = 3;      // 二进制:00000011
int result = a & b; // 二进制:00000001 (结果为1)

位或 (|)

位或运算符返回一个数,其二进制位中,两个操作数的对应位中至少有一个为1时,结果位为1,否则为0。

int a = 5;      // 二进制:00000101
int b = 3;      // 二进制:00000011
int result = a | b; // 二进制:00000111 (结果为7)

位异或 (^)

位异或运算符返回一个数,其二进制位中,两个操作数的对应位中有一个1,但不同时为1时,结果位为1,否则为0。

int a = 5;      // 二进制: 00000101
int b = 3;      // 二进制: 00000011
int result = a ^ b; // 二进制: 00000110 (结果为6)

位非(~)

位非运算符将返回一个数字,其中操作数的位为0的地方将为1,操作数的位为1的地方将为0。

int a = 5;       // 二进制: 00000101
int result = ~a; // 二进制: 11111010 (结果为-6)

左移(<<)

左移运算符将返回一个数字,其所有位都是由右操作数指定的次数左移的左操作数的位。

int a = 5;        // 二进制: 00000101
int result = a << 2; // 二进制: 00010100 (结果为20)

右移(>>)

右移运算符将返回一个数字,其所有位都是由右操作数指定的次数右移的左操作数的位。左侧的新位位置将用原始符号位(第一位)填充。

int a = 16;       // 二进制: 00010000
int result = a >> 2; // 二进制: 00000100 (结果为4)

无符号右移(>>>)

无符号右移运算符将返回一个数字,其所有位都是由右操作数指定的次数右移的左操作数的位,但左侧的所有位将用0填充,而不管数字的符号如何。

int a = -16;       // 二进制: 11110000
int result = a >>> 2; // 二进制: 00111100 (结果为60)

三元运算符(?)

三元运算符的名称来源于它所操作的操作数的数量:三个。

逻辑非运算符是一元运算符,因为它作用于一个操作数。加法运算符是二元运算符,因为它作用于两个操作数。因此,作用于三个操作数的运算符是三元运算符。有道理,对吧?

三元运算符是在java中编写条件表达式的简洁方式。它的一般形式如下:

[条件] ? [真表达式] : [假表达式]

如果条件为真,则三元运算符将返回真表达式,如果条件为假,则返回假表达式。例如,以下是使用三元运算符确定最大数的方法:

int a = 5;
int b = 3;
int max = (a > b) ? a : b; // max将等于a

java中的运算符:总结

运算符是java的重要组成部分,并且它们将在通过编程实现的任何类型的任务中被使用。通过了解所有这些运算符,您将能够最好地处理问题,如您所知,最简单的方式。

如果您试图掌握这门语言,那么没有办法避免在java中使用运算符。因此,我们鼓励您学习更多关于运算符的知识,并在编程过程中充分利用它们!

Written by 小竞 (编辑)

他们称呼我为小竞, 做作为河小马的助理有5年时间了,作为jingzhengli.com的编辑,我关注每天的科技新闻,帮你归纳一些现有科技以及AI产品来提升你的生产力,拥抱AI,让科技和AI为我们服务!