Java笔记4.0

第2章 运算符

2.1 算术运算符

运算符是用来计算数据的符号。数据可以是常量,也可以是变量。被运算符操作的数我们称为操作数。
算术运算符最常见的操作就是将操作数参与数学计算,具体使用看下图:
运算符 运算规则 范例 结果

  1. 正号 +3 3
  2. 加 2+3 5
  3. 连接字符串 “中”+“国” “中国”
  4. 负号 int a=3;-a -3
  5. 减 3-1 2
  6. 乘 2*3 6
    / 除 5/2 2
    % 取模 5/2 1
    ++ 自增 int a=1;a++/++a 2
    – 自减 int b=3;a–/--a 2
    我们在使用算术运算符时,记得要注意下列事项:
  7. 加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串。
    除法“/”当两边为整数时,取整数部分,舍余数。当其中一边为浮点型时,按正常规则相除。
    “%”为整除取余符号,小数取余没有意义。结果符号与被取余符号相同。 整数做被除数,0不能做除数,否则报错。

代码演示

 /* * 算术运算符 */ public class OperatorDemo1 { public static void main(String[] args) { /* * 常量使用算数运算符 */ System.out.println(10+20); /* * 变量使用算数运算符 */ int x = 10; int y = 20; //"+"作为加法运算使用 int z = x + y; //"+"作为连接字符串使用 System.out.println("x="+x); System.out.println("y="+y); System.out.println("z="+z); } } 
运行结果如下图所示。

在这里插入图片描述
图1-1 运行结果

2.2 算数运算符++、–的使用

算数运算符在前面我们已经学习过了,这里进行一些补充。
在一般情况下,算数运算符不会改变参与计算的变量值。而是在原有变量值不变的情况下,计算出新的值。但是有些操作符会改变参与计算的变量的值,比如++,–。
我们来看一段代码:

int a = 3; int b = 3; a++; b--; System.out.println(a); System.out.println(b); 

上面代码的输出结果a值为4,b值为2;
这说明a的原有值发生了改变,在原有值的基础上自增1;b的原有值也发生了改变,在原有值的基础上自减1;
 ++运算符,会在原有值的基础上自增1;
 --运算符,会在原有值的基础上自减1。

我们再看一段代码:

int a = 3; int b = 3; ++a; --b; System.out.println(a); System.out.println(b); 

上面代码的输出结果a值为4,b值为2;
这说明++,–运算符单独使用,不参与运算操作时,运算符前后位置导致的运算结果是一致的。

接下来,介绍下++,–运算符参与运算操作时,发生了怎样的变化,我们来看一段代码:

int a = 3; int b; b = a++ + 10; System.out.println(a); System.out.println(b); 
上面代码的输出结果a值为4,b值为13;
这里我要强调一下了,当++,--运算符参与运算操作时,后置++,--的作用:

 ++,–运算符后置时,先使用变量a原有值参与运算操作,运算操作完成后,变量a的值自增1或者自减1;

再介绍下++,–运算符前置时,参与运算操作的变化,我们来看一段代码:

int a = 3; int b; b = ++a + 10; System.out.println(a); System.out.println(b); 

上面代码的输出结果a值为4,b值为14;
这里我强调一下,当++,–运算符参与运算操作时,前置++,–的作用:
 ++,–运算符前置时,先将变量a的值自增1或者自减1,然后使用更新后的新值参与运算操作。

2.3 赋值运算符

我们来学习一下赋值运算符,赋值运算符就是为变量赋值的符号,赋值运算符的使用看下图:

运算符 运算规则 范例 结果
= 赋值 int a=2 2
+= 加后赋值 int a=2,a+=2 4
-= 减后赋值 int a=2,a-=2 0
= 乘后赋值 int a=2,a=2 4
/= 整除后赋值 int a=2,a/=2 1
%= 取模后赋值 int a=2,a%=2 0

注意:诸如+=这样形式的赋值运算符,会将结果自动强转成等号左边的数据类型。
写一个代码,我们看一下赋值运算符的使用

/* * 赋值运算符 * +=, -=, *=, /=, %= : * 上面的运算符作用:将等号左右两边计算,会将结果自动强转成等号左边的数据类型,再赋值给等号左边的 * 注意:赋值运算符左边必须是变量 */ public class OperatorDemo2 { public static void main(String[] args) { byte x = 10; x += 20;// 相当于 x = (byte)(x+20); System.out.println(x); } } 

运行结果如下图所示。
在这里插入图片描述
图1-2 运行结果

2.4 比较运算符

比较运算符,又叫关系运算符,它是用来判断两个操作数的大小关系及是否相等关系的,结果是布尔值true或者false。
运算符 运算规则 范例 结果
== 相等于 4==3 False
!= 不等于 4!=3 True
< 小于 4<3 False

大于 4>3 True
<= 小于等于 4<=3 False
= 大于等于 4>=3 True
这里需要注意一下:
 赋值运算符的 = 符号与比较运算符的 == 符号是有区别的,如下:
 赋值运算符的 = 符号,是用来将 = 符号右边的值,赋值给 = 符号左边的变量;
 比较运算符的 == 符号,是用来判断 == 符号 左右变量的值是否相等的。
我们通过下面的一段代码,我们演示一下这个注意事项:
int a = 3;
int b = 4;
System.out.println( a=b );
System.out.println( a==b );
上面代码输出的结果第一个值为4,第二个值为false。

2.5 逻辑运算符

逻辑运算符,它是用于布尔值进行运算的,运算的最终结果为布尔值true或false。
运算符 运算规则 范例 结果
& 与 false&true False
| 或 false|true True
^ 异或 true^flase True
! 非 !true Flase
&& 短路与 false&&true False
|| 短路或 false||true True
看完图后,我们来看一下逻辑运算符的常规使用方式:
 逻辑运算符通常连接两个其他表达式计算后的布尔值结果
 当使用短路与或者短路或时,只要能判断出结果则后边的部分就不再判断。
我们通过代码演示一下:

boolean b = 100>10; boolean b2 = false; System.out.println(b&&b2); // 打印结果为 false System.out.println(b||b2); //打印结果为 true System.out.println(!b2); //打印结果为 true System.out.println(b && 100>10); //打印结果为 true,本行结果的计算方式稍后讲解运算符优先级时解答 
好了,我们来总结一下运算符的结果规律吧:

短路与&&:参与运算的两边数据,有false,则运算结果为false;
短路或||:参与运算的两边数据,有true,则运算结果为true;  逻辑非! :
参与运算的数据,原先是true则变成false,原先是false则变成true。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值