JAVA基础课程(第三天)

JAVA基础课程

第三天

1.运算符

​ 定义:用以表示数据的运算,赋值和比较等。

算术运算符:
/**
 * 〈算术运算符〉
 * +(正) -(负),+(加) -(减) *(乘) /(除) (前)++,(后)++, (前)--,(后)--
 * @author PitterWang
 * @create 2020/4/19
 * @since 1.0.0
 */
public class AriTest {

	public static void main(String[] args) {

		int num1 = 12;
		int num2 = 5;
		int num3 = -12;
		int num4 = -5;
		/**
		 * 除法运算
		 */
		int re1= num1/num2;  //2.0
		double re2 = num1/num2;   //2.0
		double re3 = num1/num2 + 0.0;   //2.0
		double re4 = num1/(num2 +0.0);  //2.4
		double re5 = (double) (num1/num2);   //2.0
		double re6 = (double)num1 / num2;    //2.4

		/***
		 * 取模运算
		 * 结果的符号和被模的符号相同
		 */
		int re7 = num1 % num2;
		int re8 = num3 % num2;
		int re9 = num3 % num4;
		int re10 = num1 % num4;
		System.out.println(re7);  // 2
		System.out.println(re8);  // -2
		System.out.println(re9);  // -2
		System.out.println(re10);  // 2

		/**
		 * 前++ 先自增,后运算
		 * 后++ 先运算,后自增
		 * 不会改变本身变量的数据类型
		 */
		int a1 = 10;
		int b1 = ++a1;
		int a2 = 10;
		int b2 = a2++;
		System.out.println("a1 = " + a1 + ", b1 = " + b1);
		System.out.println("a2 = " + a2 + ", b2 = " + b2);

	}

}
		//a1 = 11, b1 = 11
		//a2 = 11, b2 = 10
赋值运算符 :

符号: = ,(+=, -=, %=, *=) (不会改变本身变量的数据类型)

比较运算符 :

符号:==, !=, >,<,>=,<=,instanceof

逻辑运算符:

&逻辑与,&&短路与,|逻辑或,||短路或,!非,^逻辑异或

在这里插入图片描述

​ &逻辑与,&&短路与 :运算结果相同。不同的是,如果符号左边时false时,&会执行右边的运算,而&&不会执行。

​ |逻辑或,||短路或 :运算结果相同。不同的是,如果符号左边是true,|会执行右边的运算,而||不会执行。

位运算符:

<<(左移), >>(右移), <<<无符号右移, &(与运算),|(或运算), ^(异或运算),~(取反运算)

直接对二进制进行运算。

​ 操作的都是整形的数据,

​ <<:在一定访问内,每向左移1位,相当于 *2,被移除的高位丢弃,空缺位补0.

​ >>:在一定访问内,每向右移1位,相当于 /2, 被移位的二进制最高位是0,右移后,空缺位补0;最高位是1,空缺位补1。

原来数字00001110
左移(<<2)00111000
左移(>>2)00000011

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yxrlX7vx-1587377583815)(C:\Users\92588\AppData\Roaming\Typora\typora-user-images\image-20200419121725940.png)]

<<<无符号右移 被移位的二进制最高位无论是0或者是1,空位都用0补。

&(与运算):只有1&1时结果时1,否则是0.

|(或运算):0|0是0,否则都是1。

^(异或运算):相同时0.不同是1.

~(取反运算)

三元运算符
1.结构:条件表达式?表达式1:表达式2

​ 2.说明:条件表达式为boolean类型,如果条件表达式为真,则执行表达式1,否者执行表达式2.

2.运算符优先级
优先级运算符结合性
1()、[]、{}从左向右
2!、+、-、~、++、–从右向左
3*、/、%从左向右
4+、-从左向右
5«、»、>>>从左向右
6<、<=、>、>=、instanceof从左向右
7==、!=从左向右
8&从左向右
9^从左向右
10|从左向右
11&&从左向右
12||从左向右
13?:从右向左
14=、+=、-=、*=、/=、&=、|=、^=、~=、«=、»=、>>>=从右向左
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值