JAVA - 基本数据类型与运算符
程序员文章站
2022-07-14 19:42:48
...
目录
- 基本数据类型
- 数值类型
- 整形(byte、short、int、long)
- 浮点(float、double)
- 字符类型(char)
- 48/65/97
- 布尔类型(bollean)
- 数值类型
- 运算符
- 算数运算符
- 关系运算符(大小关系)
- 逻辑运算符(and、or)
- 位运算符(与、异或、移位)
<一> 基本数据类型
1> 类型默认转换与强制类型转换
class DataTypeDemo1{
public static void main(String[] args){
byte a=3,b=4,c;
//c = a + b;
//c = 3 + 4;
System.out.println(c);
}
}
问题:程序中两条注释哪一条会报错?
解析:
- 第一条注释会报错,因为byte、short类型变量在进行加减时会自动转换为int,即a+b结果为int类型,将int类型数据赋值给byte类型会报错;
- 第二条正确,整形常量(默认int类型)加减时会首先计算结果,随后在程序编译时直接作为c的初始化值。
class DataTypeDemo1{
public static void main(String[] args){
byte a=3,b=4,c;
c = 3 + 4;
System.out.println(c);
}
}
反编译 .class 测试( XJad ):
强制类型转换:byte a = (byte)(3+4);
2> 六种常量
- 字符串常量 "hello"
- 整数常量 12,23
- 小数常量 12.345
- 字符常量 'a','A','0'
- 布尔常量 true,false
- 空常量 null
3> 变量赋值后缀
整数常量默认为int类型,浮点型常量默认为double;
为long和float类型数据赋值时需要注意后缀。
- float a = 5.23F;
- long b = 1000000000L;
4> 二进制、八进制、十进制、十六进制
- 二进制 0b
- 八进制 0
- 十进制 <默认>
- 十六进制 0x
<二> 运算符
1> 算数运算符
+、-、*、/、%、+=、-=、%=、++、--
2> 关系运算符
==、!=、<、>、<=、>=、instanceof
3> 逻辑运算符
&&、||
4> 位运算符
&、|、>>、<<、^、~
5> 位运算使用场合
a) 奇偶判定( x&1 )
b) 快速乘/除2^n次方( x<<n、x>>n )
c) 交换两个整形数
上一篇: Python的基本数据类型、运算符
下一篇: Java基本数据类型+运算符