1.算术运算符:
运算符 |
描述 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
% | 取余(mod) |
++ | 自增 |
-- | 自减 |
//++a - 先自增1,再使用
//a++ - 先使用,再自增1
//--c - 先自减1,再使用
//c-- - 先使用,再自减1
public class Test01{
/**
知识点:算数运算符的使用
符号:+、-、*、/、%、++、--
int a = 10;
int b = 3;
int result = a + b;
System.out.println(result);//13
System.out.println(a + b);//13
System.out.println(10 + 3);//13
System.out.println(10 - 3);//7
System.out.println(10 * 3);//30
System.out.println(10 / 3);//3
System.out.println(10 % 3);//1
//++:自增1
//++a - 先自增1,再使用
int a = 10;
System.out.println(++a);//11
System.out.println(a);//11
//b++ - 先使用,再自增1
int b = 10;
System.out.println(b++);//10
System.out.println(b);//11
//--:自减1
//--c - 先自减1,再使用
int c = 10;
System.out.println(--c);//9
System.out.println(c);//9
//d-- - 先使用,再自减1
int d = 10;
System.out.println(d--);//10
System.out.println(d);//9
*/
public static void main(String[] args){
}
}
public class Test02{
/**
知识点:算数运算符的深入
符号:+、-、*、/、%、++、--
扩展:
1.向上转型使用最高位补位
2.向下转型从最高位开始舍弃
//特殊点1:byte做运算会先向上转型成int类型
byte b1 = 10;
byte b2 = 20;
//b1 - byte:0000,1010
// int:0000,0000,0000,0000,0000,0000,0000,1010
//b2 - byte:0001,0100
// int:0000,0000,0000,0000,0000,0000,0001,0100
//结果 -int:0000,0000,0000,0000,0000,0000,0001,1110
// (byte):0001,1110
byte result = (byte)(b1 + b2);
System.out.println(result);
//特殊点2:shor做运算会先向上转型成int类型
short s1 = 10;
short s2 = 20;
//s1 - short:0000,0000,0000,1010
// int:0000,0000,0000,0000,0000,0000,0000,1010
//s2 - short:0000,0000,0001,0100
// int:0000,0000,0000,0000,0000,0000,0001,0100
//结果 - int:0000,0000,0000,0000,0000,0000,0001,1110
// (short):0000,0000,0001,1110
short result = s1 + s2;
System.out.println(result);
//特殊点3:byte和short做运算会先向上转型成int,其余的类型会按照取值范围大的转型
byte b = 10;
short s = 10;
int i = 10;
long l = 10;
float f = 10;
double d = 10;
System.out.println(b + s);//int
System.out.println(b + i);//int
System.out.println(i + l);//long
System.out.println(i + f);//float
System.out.println(l + f);//float
System.out.println(f + d);//double
//特殊点4:char类型可以做算数运算,获取的是字符的Unicode码
char c = 'a';//a - Unicode - 97
int i = c+1;
System.out.println(i);//98
//特殊点5:++a; 和 b++;没有区别,因为分号为执行语句的结束,不管先加还是后加都直接加上
int a = 10;
++a;
System.out.println(a);//11
int b = 10;
b++;
System.out.println(b);//11
//特殊点6:
int