MENU

Java_学习记录_运算符

January 13, 2021 • Java

概念理解

  • 运算符:具有一定运算意义的符号
  • 操作数:参与运算的数据
  • 表达式:由运算符和操作数组成,并且能计算出结果的式子

常用运算符+ - * / %

  • 两个类型相同的操作数进行算数运算,其结果类型与操作数相同

1/2=0

  • 两个类型不同的操作数进行算数运算,其结果类型与精度较高的那个操作数相同

1/2.0=0.5

自增自减++ --

int a = 10;
int b = 10;
int x = 3 * a++;
int y = 3 * ++b;
System.out.println("a的值为:" + a + " b的值为:" + b);
System.out.println("x的值为:" + x + " y的值为:" + y);
/*
a 的值为:11 b 的值为:11
x 的值为:30 y 的值为:33
*/
  • 前缀自增自减法 (++a,--a):先进行自增或者自减运算,再进行表达式运算
  • 后缀自增自减法 (a++,a--):先进行表达式运算,再进行自增或者自减运算
  • 如果没有参与其他运算时候,前缀还是后缀是没区别的

复合赋值运算符

int a = 10;
a *= 3 + 2;
System.out.println("a的值为:" + a);
//a的值为:50
  • 把=右边看成整体
  • 变量先与右边完成运算,然后赋值给自身

逻辑运算符

boolean a = true;
boolean b = false;
System.out.println("a && b = " + (a&&b));
System.out.println("a || b = " + (a||b) );
System.out.println("!(a && b) = " + !(a && b));

/*
a && b = false
a || b = true
!(a && b) = true
*/

逻辑运算符短路

int a = 5;// 定义一个变量;
boolean b = (a < 4) && (a++ < 10);
System.out.println("使用短路逻辑运算符的结果为" + b);
System.out.println("a的结果为" + a);
/*
使用短路逻辑运算符的结果为 false
a 的结果为 5
*/

首先判断 a<4 的结果为 false,则 b 的结果必定是 false,所以不再执行第二个操作 a++<10 的判断,所以 a 的值为 5。

  • && 运算时,如果左边条件不成立,则不进行右边判断
  • || 运算时,如果左边条件成立,则不进行右边判断
  • & 和 | 也是逻辑运算符,但是没有短路特性
转载请注明出处,并添加原文地址

Archives QR Code Tip
QR Code for this page
Tipping QR Code