3-操作符

1. 算数操作符

import java.util.Scanner;  
  
public class Sum {  
    public static void main(String[] args) {  
        Scanner input = new Scanner(System.in);  
        int a = input.nextInt();  
        int b = input.nextInt();  
        System.out.print(a+b);  
    }  
}
二元运算类型提升规则

  • 整数运算:
    如果两个操作数有一个为long,则结果也为long;
    没有long时,结果为int。即使操作数全为short、byte,结果也是int。

  • 浮点运算:
    如果两个操作数有一个为double,则结果为double;
    只有两个操作数都是float,则结果才为float。

  • 注意:int 与 float 运算,结果为 float。

import java.util.Scanner;  # 
  
public class BMI {  
    public static void main(String[] args) {  
        Scanner input = new Scanner(System.in);  
        float height = input.nextFloat();  
        float weight = input.nextFloat();  
        System.out.println(weight/(height*height));  
    }  
}

2. 关系操作符

3. 逻辑运算符

关键字 简介 说明
& 长路与 两侧都会被运算
&& 短路与 只要某一个是false,后面的就不进行运算
| 长路或 两侧都会被计算
|| 短路或 某一个为**true,**后面的就不进行计算
! 取反 真真假假!!!
^ 异或 不同为真,相同为否。拒绝同

4. 位操作符

关键字 简介
Integer.toBinaryString() 一个整数的二进制表达
| 位或
& 位与
^ 异或
~ 取非
<< 带符号左移(正负不变)
>> 带符号右移(正负不变)
>>> 无符号右移(变成正数)

5. 赋值运算符

关键字 简介
= 赋值操作
+= 对本身进行运算,并赋值,下同
-=
*=
/=
%=
&= 位操作,下同
|=
^=
<<=
>>=
>>>=
int i=1;
i+=++i;
i=?       //答案:3

6. 三元操作符

7. Scanner操作符

import java.util.Scanner
Scanner input = new Scanner(System.in);
int num = input.nextInt();
Scanner input = new Scanner(System.in);
float num = input.nextFloat();
Scanner input = new Scanner(System.in);
String s = input.nextLine();
Scanner input = new Scanner(System.in);
int i = input.nextInt();
String rn = s.nextLine();//先读取\r\n
String a = s.nextLine();//再读取字符串