java变量和运算符的基本知识点
java基本类型
java基本类型一共8种,如下图。
八种 | 字节数 | 数据表示范围 |
---|---|---|
byte | 1 | -128~127 |
short | 2 | -32768~32767 |
int | 4 | -2147483648~2147483648 |
long | 8 | -2E63~2E63-1 |
float | 4 | -3.403E38~3.403E38 |
double | 8 | -1.798E308~1.798E308 |
char | 2 | 表示一个字符 |
boolean | - | true与false |
注:boolean类型没有给出精确的定义,《Java虚拟机规范》给出了4个字节,和boolean数组1个字节的定义,具体还要看虚拟机实现是否按照规范来,所以1个字节、4个字节都是有可能的。
定义变量(创建变量)
定义变量的语法格式:
数据类型 变量名 = 数据值;
int a = 100;
比如:
public class Test {
public static void main(String[] args) {
int a = 10;
double b = 3.14;
char c = 'z';
String s = "i love java";
a = 20;
System.out.println(a);
}
}
变量使用注意事项
- 变量定义后可以不赋值,使用时再赋值。不赋值不能使用。
- 变量使用时有作用域的限制。
- 变量不可以重复定义。
数据类型转换
范围小的数据类型值(如byte),可以直接转换为范围大的数据类型值(int)
范围大的数据类型值(如int),不可以直接转换为范围小的数据类型值(byte)
强制类型转换格式:
int i = (int)6.718;
double d = 3.14;
int i2 = (int)d;
运算符
算术运算符
- 加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串。
- 除法“/”当两边为整数时,取整数部分,舍余数。当其中一边为浮点型时,按正常规则相除。
- “%”为整除取余符号,小数取余没有意义。结果符号与被取余符号相同。
- 整数做被除数,0不能做除数,否则报错。
算数运算符++、–的使用
- ++运算符,会在原有值的基础上自增1
- –运算符,会在原有值的基础上自减1
例:
int a = 3;
int b = 3;
++a;
–b;
System.out.println(a);
System.out.println(b);
上面代码的输出结果a值为4,b值为2;
或:
int a = 3;
int b = 3;
a++;
b–;
System.out.println(a);
System.out.println(b);
上面代码的输出结果a值为4,b值为2; - ++,–运算符后置时,先使用变量a原有值参与运算操作,运算操作完成后,变量a的值自增1或者自减1;
int a = 3;
int b;
b = a++ + 10;
System.out.println(a);
System.out.println(b);
上面代码的输出结果a值为4,b值为13; - ++,–运算符前置时,先将变量a的值自增1或者自减1,然后使用更新后的新值参与运算操作。
int a = 3;
int b;
b = ++a + 10;
System.out.println(a);
System.out.println(b);
上面代码的输出结果a值为4,b值为14;
赋值运算符
- +=, -=, *=, /=, %=
- 上面的运算符作用:将等号左右两边计算,会将结果自动强转成等号左边的数据类型,再赋值给等号左边的
- 注意:赋值运算符左边必须是变量
public class Test2 {
public static void main(String[] args) {
byte x = 10;
x += 20;// 相当于 x = (byte)(x+20);
System.out.println(x);
}
}
结果为 30
比较运算符
- 比较运算符,又叫关系运算符,它是用来判断两个操作数的大小关系及是否相等关系的,结果是布尔值true或者false
- ==,>,<,!=,>=,<=
- 赋值运算符的 = 符号与比较运算符的 == 符号是有区别的,如下:
- 赋值运算符的 = 符号,是用来将 = 符号右边的值,赋值给 = 符号左边的变量;
- 比较运算符的 == 符号,是用来判断 == 符号 左右变量的值是否相等的。
int a = 3;
int b = 4;
System.out.println( a=b );
System.out.println( a==b );
上面代码输出的结果第一个值为4,第二个值为false。
逻辑运算符
-
逻辑运算符,它是用于布尔值进行运算的,运算的最终结果为布尔值true或false。
-
&, |, ^, !, &&, ||
-
逻辑运算符通常连接两个其他表达式计算后的布尔值结果
-
当使用短路与或者短路或时,只要能判断出结果则后边的部分就不再判断
-
短路与&&:参与运算的两边数据,有false,则运算结果为false;
-
短路或||:参与运算的两边数据,有true,则运算结果为true;
-
逻辑非! : 参与运算的数据,原先是true则变成false,原先是false则变成true
-
&和&&的区别:
共同点:它们都表示运算符的两边都是true时,结果为true;
不同点:
& 表示在运算时两边都会计算,然后再判断;
&&表示先运算符号左边的东西,然后判断是否为true,是true就继续运算右边的然后判断并输出,是false就停下来直接输出不会再运行后面的东西。 -
| 和 || 的区别:
共同点:它们都表示运算符的两边任意一边为true,结果为true,两边都不是true,结果就为false;
不同点:
| 表示两边都会运算,然后再判断结果
|| 表示先运算符号左边的东西,然后判断是否为true,是true就停下来直接输出不会再运行后面的东西,是false就继续运算右边的然后判断并输出。