// 整数:byte、short、int、long // 以上4个数据类型的相同点是都可以存储整数 // 不同点是存储区间范围由小到大 // int是默认的整数类型、也是开发中最常用的类型 // 浮点数:float、double // 以上2个数据类型的相同点是都可以存储浮点数 // 不同点是存储区间范围由小到大 // double是默认的整数类型、也是开发中最常用的类型 // 特殊:char、boolean // (1)byte字节(8位) byte b = 1; System.out.println(b); // (2)short短整型(16位) short s = 12; System.out.println(s); // (3)int整型(32位) int i = 123; System.out.println(i); // (4)long长整型(64位) long g = 1234; System.out.println(g); // (5)float单精度浮点数(32位) // 注意:浮点数必须以F或f结尾 float f = 1.23F; System.out.println(f); // (6)double双精度浮点数(64位) double d = 1.2345; System.out.println(d); // (7)char字符类型 // 注意:只能存储一个字符。 char c = '你'; System.out.println(c); // (8)boolean布尔类型 // 布尔类型的值只有true和false两种 // true:对、成功、真 // false:错、失败、假 boolean boo = true; System.out.println(boo);
理解:变量可以理解为一个容器,里面存储了数据。
定义变量的句式:数据类型 变量名
注意:变量不能重名,不能以数字开头
int a = 2; a = 3; a = 5; System.out.println(a);//输出的a的值是5
低精度赋值高精度没问题、高精度赋值低精度需要强制类型转换
short a = 2;低精度 int b = 3;高精度 b = a; short相对于int是低精度,因此把a的值赋值给b是没有问题的 short a = 2; int b = 3; a = (short)b;如果把高精度的b赋值给低精度的a,需要在前面加(short) System.out.println(a);
整数赋值浮点数没问题(整数相对于浮点数是低精度)、浮点数赋值整数需要强制类型转换
long c = 5; float d = 3F; c = (long)d; System.out.println(c);
说明一:相同类型的数据之间才能进行计算。
说明二:会先把所有低精度的数据自动转换为高精度、再进行计算。
short x = 1;// double 1.0 int y = 2;// double 2.0 double z = 3; double sum = x + y + z; 说明:由于double是最高精度,所以前面的short int 都转变成了double类型,所以最后的和可以直接用最高精度的double System.out.println(sum);
System.out.println(3+2); System.out.println(3-2); System.out.println(3*2); System.out.println(3/2); System.out.println(3%2);// 余数
System.out.println(3>2); System.out.println(3>=2); System.out.println(3<2); System.out.println(3<=2); System.out.println(3==2);// 相等 System.out.println(3!=2);// 不等
// 逻辑与&&:表示并且的意思 System.out.println(true && false); System.out.println(false && true); System.out.println(true && true); System.out.println(false && false);
// 逻辑或||:表示或者的意思 System.out.println(true || false); System.out.println(false || true); System.out.println(true || true); System.out.println(false || false);
// 逻辑非!:表示取反的意思 System.out.println(!true); System.out.println(!false);
int a = 2; System.out.println(a); a += 3; System.out.println(a); a -= 3; System.out.println(a); a *= 3; System.out.println(a); a /= 3; System.out.println(a); a %= 2; System.out.println(a);
// ++自增一、--自减一 int a = 2; //a = a + 1; //a += 1; a++; a--; System.out.println(a);
运算符 | 含义 | 实例 | 结果 |
---|---|---|---|
i++ | 将 i 的值先使用再加 1 赋值给 i 变量本身 | int i=1; int j=i++; | i=2 j=1 |
++i | 将 i 的值先加 1 赋值给变量 i 本身后再使用 | int i=1; int j=++i; | i=2 j=2 |
i– | 将 i 的值先使用再减 1 赋值给变量 i 本身 | int i=1; int j=i–; | i=0 j=1 |
–i | 将 i 的值先减 1 后赋值给变量 i 本身再使用 | int i=1; int j=–i; | i=0 j=0 |
// (true/false) ? A : B int a = (false ? 2 : 3); System.out.println(a); int x = 3; int y = 6; int z = (x > y) ? x : y; System.out.println(z);