目录
1. 算数运算符
/ 处以
% 取余
public class TestOper01{
public static void main(String[] args){
System.out.println(13/5);// 结果为2
System.out.println(13%5); //结果为3
System.out.println(13.0/5.0);//2.6
System.out.println(13.0%5.0);//2.0
}
}
练习:
输入一个4位数 输出 千百十个 具体的值
import java.util.Scanner;
public class TestOper02{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("请输出一个4位数:");
int num = sc.nextInt();
System.out.println("输入的4位数是:"+num);
// 个位
int num1;
num1 = num % 10;
System.out.println("个位:"+num1);
// 十
int num2;
num2 = num / 10 % 10; // 5473
System.out.println("十位:"+num2);
// 百
int num3;
num3 = num / 100 % 10 ;
System.out.println("百位:"+num3);
// 千
int num4;
num4 = num / 1000;
System.out.println("千位:"+num4);
}
}
2.+号
正数
相加
拼接
public class TestOper03{
public static void main(String[] args){
// 正数
System.out.println(+6);
// 相加
System.out.println(+6+'6'); //字符5 ASCII的值是54 --> 60
// 拼接
// 规则 + 的两边只要有一边是字符串 整体的输出就是字符串
System.out.println(5+6+"7");// 117
System.out.println(5+'6'+"7");// 597
System.out.println("5"+6+"7");// 567
System.out.println("5"+'6'+"7");// 567
System.out.println("5"+'6'+'7');// 567
}
}
3. ++
单独使用
参与运算
public class TestOper04{
public static void main(String[] args){
int a = 5;
a++;// a=a+1
System.out.println(a);
a = 5;
++a;// a=a+1
System.out.println(a);
a = 5;
int m = a++ +6; // 先运算 后+1
System.out.println(m); // --> 11
System.out.println(a); // 6
a = 5;
int n = ++a +6; // 先+1 后运算
System.out.println(n); // 12
System.out.println(a); // 6
}
}
4. = 赋值操作
int a = 12;
int b = 60;
如何将两个变量交换
public class TestOper04{
public static void main(String[] args){
int a=12;
int b=60;
System.out.println("交换前a:"+a);
System.out.println("交换前b:"+b);
int tmp;
tmp=a;
a=b;
b=tmp;
System.out.println("交换后a:"+a);
System.out.println("交换后b:"+b);
}
}
练习:求三个数的和
public class TestOper05{
public static void main(String[] args){
int a = 10;
int b = 20;
int c = 30;
int s = a+b+c;
System.out.println("sum:"+s);
int sum1 = 0;
sum1 += a;
sum1 += b;
sum1 += c;
System.out.println("sum:"+sum1);
}
}
5. 关系运算
public static void main(String[] args){
System.out.println(4<5);
System.out.println(4>5);
System.out.println(4==5);
System.out.println(4!=5);
}
}
6. 逻辑运算
& | --> AND OR
&& || --> 不同之处 短路运算 效率更高
- a&&b&&c&&d ... 只要遇到不为true的就能直接返回false
- a||b||c||d||e ... 只要遇到不为false的就能直接返回true
!非 --> 取反面
^ 异或 --> 不同则返回true
7. 三元运算
a?b:c
public class TestOper06{
public static void main(String[] args){
String a = (1<2)?"你好":"我好";
System.out.println(a);
String b = (1>2)?"你好":"我好";
System.out.println(b);
}
}
8 位运算
<<< 左移
3<<<2
-->12
面试题:5乘以8的最快方式 5<<<3不用任何的+-操作
有符号的右移>>
6>>2 -->1
-6>>2 --> -2
无符号的右移>>>
确实部分全部补零
&|^~