文章目录
- JAVA数据类型
- 基本数据类型
- 字符串类型
- Java运算符
- 算术运算符
- 关系运算符
- 逻辑运算符
- 位运算符
- 移位运算符
- 条件运算符
JAVA数据类型
基本数据类型
Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
类型 | 描述 |
---|---|
byte | byte 数据类型是8位、有符号的整数类型 |
short | 16位短整型 |
int | 32为整型 |
long | 64位长整型 |
float | 单精度浮点型,32位 |
double | 双精度浮点型,64位 |
char | 16位字符类型 |
boolean | 布尔类型 |
字符串类型
String 变量名 = “初始值”
转义字符 | 描述 |
---|---|
\n | 换行 |
\' | 单引号 |
\" | 双引号 |
\\ | 反斜杠 |
字符串的 + 操作, 表示字符串拼接。
String a = "hello";
String b = "world";
String c = a + b;
System.out.println(c);
Java运算符
算术运算符
- 基本四则运算符:+(加)、-(减)、*(乘)、/(除)、%(取余);
int/int的结果还是int,0不能作为除数;
%不仅可以对int求模取余,也可以对double求模取余。 - 增量赋值运算符:+=、-=、*=、/=、%=;
- 自增/自减运算符:++、–;
如果不取自增运算的表达式的返回值,则前置自增和后置自增没有区别;
如果取表达式的返回值,则前置返回的值是自增之后的值,后置自增是返回自增之前的值。
关系运算符
关系运算符主要有六个:==、!=、<、>、<=、>=;
关系运算符的返回值都是boolean类型。
逻辑运算符
逻辑运算符主要有三个:&&(与)、||(或)、!(非);
逻辑运算符的操作数和返回值都是boolean。
- 逻辑与&&
两个操作数都为true时,返回true,否则返回false; - 逻辑或||
两个操作数都为false时,返回false,否则返回true; - 逻辑非!
操作数为false时,返回true,操作数为true时,返回false。 - 短路求值
&&和||遵守短路求值的规则,&&第一个操作数为false则直接返回false,||第一个操作数为true则直接返回true。 - &和|
&和|的操作数为boolean的时候,也表示逻辑运算,但是不支持短路求值。
位运算符
位运算符主要有四个:&、|、~、^;
位操作表示安二进制位运算,计算机中都是使用二进制来表示数据的,按位运算就是在按照二进制位的每一位一次进行计算。
- 按位与&:全1为1,有0为0;
- 按位或|:全0为0,有1为1;
- 按位取反~:把1变为0,0变为1;
0x前缀的数字为十六进制数字,printf能够格式化输出内容,%x表示按照十六进制输出。 - 按位异或^:同0或同1则为0,相异则为1。
移位运算符
移位运算符有三个:<<、>>、>>>
- 左移<<:最左侧的一位不要了,最右侧补0;
- 右移>>:最右侧的一位不要了,在左侧补充符号位;
- 无符号右移>>>:最右侧的一位不要了,最左侧补0;
左移1位,相当于原数字2,左移N位,相当于原数字2的N次方;
右移1位,相当于原数字/2,右移N位,相当于元数字/2的N次方;
由于计算机计算移位效率高于基本四则运算,当某个代码正好除2的N次方的时候可以用移位运算代替;
移动负数位或移位位数过大都没有意义。
条件运算符
条件运算符只有一个:表达式1?表达式2:表达式3;
当表达式1的值为true时,整个表达式的值为表达式2的值,当表达式1的值为false是,整个表达式的值为表达式3的值。