Java变量与运算符(二)

30 篇文章 1 订阅

一、数据类型转换

1、算数运算时的自动转换

存储位数越多,类型的级别越高
下图为数据类型与存储位数的对照表

char
int
byte
short
long
float
double
2字节
4字节
1字节
2字节
8字节
4字节浮点数
8字节浮点数

1字节为8位二进制数
即0000 0000~0111 1111为一个字节

例如:

5+5.6		//结果将会转变为一个double类型,而不是int类型

2、强制转换

强制转换一般用于高级别的类型赋值给低级别类型
例如

int num = 786;
byte by = (byte)num;		//int强制转换为byte----18
short sh = (short)num;		//int强制转换为short---786
只保留最后的8位,符合byte的存储位数,其他数据一律舍弃
00000000000000000000001100010010
int786
00010010
byte18
int
786
byte
18

二、运算符

1、关系运算符

运算符含义范例结果
= =等于5==6false
!=不等于5!=6true
>大于5>6false
<小于5<6true
>=大于小于5>=6false
<=小于等于5<=6true
=为赋值运算符,==为等于运算符 关系表达式的结果为布尔值
><>=<=运算符只支持数值类型的数据比较
==!=运算符支持所有数据数据类型的比较
><>=<= 运算符的优先级别高于==!=

2、逻辑运算符

运算符含义运算规则
&&短路与两个操作数都是true,结果才是true;如果左边为false,右边的表达式不会进行运算
||短路或两个操作数一个是true,结果为true;如果左边为true,右边的表达式不会进行运算
!逻辑非操作数为true,结果为false;操作数为false,结果为true
&逻辑与两个操作数都是true,结果才是true;不论左边取值,右边的表达式都会进行运算
|逻辑或两个操作数一个是true,结果为true;如果左边为true,右边的表达式都会进行运算
^逻辑异或两个操作数相同,结果为false;两个操作数不同,结果为true
int x=8;
int y=9;
					//x=9,y=9;	x=10,y=9;
System.out.println((++x==y)&&(++x!=y));		//true
System.out.println(x);						//10
int i=8;
int j=9;
					//i=9,j=9;	i=10,j=9;
System.out.println( (++i!=j)&&(++i==j));	//false
System.out.println(i);						//9

3、位运算符

运算符含义运算规则
&按位与两个操作数都是1,结果才是1
|按位或两个操作数一个是1,结果为1
^按位异或两个操作数相同,结果为0;两个操作数不同,结果为1
~按位非两个操作数都是true,结果才是true;不论左边取值,右边的表达式都会进行运算
<<左移右侧空位补0
>>右移左侧空位补最高位,即符号位
>>>无符号右移左侧空位补0
位运算符的操作数都是整型数,包括intshortlongbytechar
位运算符的运算结果也都是整型数,包括intlong
如果操作数是charbyteshort,位运算前其值会自动晋升为int,运算结果也为int
位运算符对操作数以二进制为单位进行运算

4、条件运算符

条件 ? 表达式1 : 表达式2

true
false
条件
表达式1
表达式2

三、总结

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jule_zhou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值