基本数据类型

Java 语言支持 8 种基本数据类型:byteshortintlongfloatdoublecharboolean

整形

  1. // 声明一个整型变量age
  2. int age = 10;
  3. // 声明一个整型变量 score
  4. int score = 100;
  5. // 整型除了 int 类型,还有 short 和 long 类型,也就是短整型和长整型,他们用于存放不同范围的整数值。需要注意的是,long 类型的值后面要以大写字母 L 或小写字母 l 结尾
  6. // tips: 对于长整型,推荐后面总以大写字母 L 结尾,因为小写字母 l 与数字 1 容易混淆。
  7. // 声明一个短整型变量a
  8. short a = 20;
  9. // 声明一个长整型变量b
  10. long b = 100l;
  11. // 声明一个长整型变量c
  12. long c = 100L;
  13. // 前缀 0x 表示十六进制,前缀 0b 表示二进制
  14. // 十进制表示数字10
  15. int decimalValue = 10;
  16. // 十六进制表示数字10
  17. int hexadecimalValue = 0xA;
  18. // 二进制表示数字10
  19. int binaryValue = 0b1010;

浮点型

浮点型又可分为单精度浮点型 (float) 和双精度浮点型 (double)。需要注意的是,float 类型的值必须要以大写字母 F 或小写字母 f 结尾

  1. float f1 = 1.2f;
  2. float f2 = 10.56F;
  3. // double 类型的值可以以字母 D 或 d 结尾,不强制
  4. // 声明三个double类型变量,其值都为123.3
  5. double d1 = 123.3;
  6. double d2 = 123.3D;
  7. double d3 = 123.3d;
  8. // 另外浮点类型也可以使用字母 E 或 e,后面跟上次方的数值,来表示数学中的科学计数法
  9. // 科学计数法表示的 123.4
  10. double d2 = 1.234e2;
  11. float f1 = 1.234e2f;
  12. // 科学计数法表示 200022.1
  13. double d3 = 2.000221e5

布尔类型

  1. boolean b1 = true;
  2. boolean b2 = false;

字符类型

字符类型 char 表示一个字符。Java 中的 char 类型除了可表示标准的 ASCII 外,还可以表示一个 Unicode 字符

  1. public class CharType {
  2. public static void main(String[] args) {
  3. // 存放一个 ASCII 码
  4. char a = 97;
  5. // 存放一个Unicode字符
  6. char zh = '慕';
  7. System.out.println(a);
  8. System.out.println(zh);
  9. }
  10. }

char 和 String

\ n 换行(0x0a)
\ r 回车(0x0d)
\F 换页(0x0c)
\ b 退格(0x08)
\ s 空格(0x20)
\ t 制表符
双引号
单引号
\\ 反斜杠
\ddd 八进制字符(ddd)
\ uxxxx 十六进制 Unicode 字符(xxxx)

运算符

算术运算符

运算符 描述
+ 加法运算符 (也用于字符串连接)
- 减法运算符
* 乘法运算符
/ 除法运算符
% 取余运算符
++ 自增运算符
自减运算符

注意下面情况
image.png

关系运算符

运算符 描述
== 检查如果两个操作数的值是否相等,如果相等则条件为真。
!= 检查如果两个操作数的值是否相等,如果值不相等则条件为真。
> 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。
< 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。
>= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。
<= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。

位运算符

运算符 描述
&(按位与) 如果相对应位都是1,则结果为1,否则为0
|(按位或) 如果相对应位都是 0,则结果为 0,否则为 1
^(按位异或) 如果相对应位值相同,则结果为0,否则为1
〜(按位取反) 按位取反运算符翻转操作数的每一位,即0变成1,1变成0。
<< (左位移) 按位左移运算符。左操作数按位左移右操作数指定的位数。
>> (右位移) 按位右移运算符。左操作数按位右移右操作数指定的位数。
>>> (零填充右移) 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。

逻辑运算符

运算符 描述
&&(逻辑与) 当且仅当两个操作数都为真,条件才为真。
|| (逻辑或) 如果任何两个操作数任何一个为真,条件为真。
!(逻辑非) 用来反转操作数的逻辑状态。如果条件为真,则逻辑非运算符将得到假。

赋值运算符

运算符 描述 例子
= 简单的赋值运算符。将值从右侧操作数分配给左侧操作数。 c = a + b将a + b的值赋给c
+= 加和赋值运算符。它将右操作数添加到左操作数,并将结果分配给左操作数。 c + = a等于c = c + a
-= 减和赋值运算符。它从左侧操作数中减去右侧操作数,并将结果分配给左侧操作数。 c -= a等效于c = c – a
*= 乘和赋值运算符。它将右操作数与左操作数相乘,并将结果分配给左操作数。 c = a等效于c = c a
/ = 除和赋值运算符。它将左操作数除以右操作数,并将结果分配给左操作数。 c /= a等于c = c / a

其他运算符

条件(三元)运算符

  1. package operator.arithmetic;
  2. public class demo8 {
  3. public static void main(String[] args) {
  4. int age = 59;
  5. System.out.println(age > 60 ? "及格" : "没及格");
  6. }
  7. }

instanceof 运算符

  1. package operator.arithmetic;
  2. public class demo9 {
  3. public static void main(String[] args) {
  4. String name = "wuchendi";
  5. boolean b = name instanceof String;
  6. System.out.println("结果为:" + b);
  7. }
  8. }