数据类型和运算符

数据类型和运算符

数据类型

数据类型分为:基本数据类型和引用数据类型,基本数据类型包括:byte,short,int,long,float,double,char,boolean,引用数据类型包括:类,接口,数组等

1.整数类型(默认值为0)
整数类型:byte,short,int,long
数据类型和运算符_第1张图片
面试题:byte a=(byte) 128 ? 请问a的值为多少?
解:因为值都会转为二进制数
128二进制数:10000000;
减一:01111111
取反:10000000

同理负数取反加1:
例如-7的二进数?
7的二进制数:00000111
取反:11111000
加一:11111001

二进数0b开头,八进制数0开头,16进制数0x开头

2.浮点类型(默认值为0.0)
数据类型和运算符_第2张图片
BigDecimal解决精度丢失问题数据类型和运算符_第3张图片
3.boolean(布尔)类型(默认值为false)
4.char(字符类型)
默认值为:\u0000即为0
最大值为:65535

AscII表

数据类型和运算符_第4张图片

基本数据类型转换

1.自动类型转换:小的数据类型赋值给大的数据类型,此类转换无需操作,计算机会自动转换
2.强制类型转换:大的数据类型赋值给小的数据类型
例如float a=3.5f 因为浮点类型默认为double类型,double的数据类型大于float的数据类型,所以要进行强制转换,当然你也可以写成float a=(float)3.5

布尔逻辑运算符

&和&& 一假即假
|和|| 一真即真
^同假异真

&& 一旦发现使用&&连接的表达式值为false,则后面使用&&连接的表达式都不用执行了,||同理

位运算符

&按位与 |按位或 ^按位异或 ~按位取反
特点:~ 1变0 0变1
& 有0则为0
| 有1则为1
^ 相同为0,不同为1
运算符优先级从高到低:~ & ^ |

字符串连接符的"+"

一旦遇到了" "字符串,后面所有的+都是字符串连接符
例:system.out,println(1+2+“3”+4+5);//3345

三目运算符

变量名=逻辑表达式?值1:值2;
解释:逻辑表达式的值为true,则把值1赋值给变量
否则把值2赋值给变量

最后附上运算符优先级表数据类型和运算符_第5张图片

你可能感兴趣的:(数据类型和运算符)