基本运算符
算术运算符
package Oprator;
public class Demo01 {
public static void main(String[] args) {
//ctrl + d 复制当前行到下一行
//二元运算符
int a = 10;
int b = 20;
int c = 30;
int d = 40;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/((double)b));//注意int类型的转换 不然输出结果将会错误
}
}
package Oprator;
public class Demo02 {
public static void main(String[] args) {
long a = 154165465463L;
int b = 100;
short c = 10;
byte d = 126;
int e = 102;
System.out.println(a+b+c+d);//long类型
System.out.println(b+c+d);//int类型
System.out.println(d+c);//int类型
//没有高于int类型的数据 算出的结果类型默认为int
System.out.println(e%b);//取余 模运算
}
}
++ – 以及幂运算工具使用
package Oprator;
public class Demo04 {
public static void main(String[] args) {
int a = 5;
int d = 5;
int b = a++; //先给b赋值 再自增 赋值后在执行
//++的含义在数值的基础上增1
System.out.println(b);//此处b仍为5
int c = ++d;//先自增 再给b赋值 执行后在赋值
System.out.println(c);//此处c为6
//幂运算 2^3 2*2*2=8 使用相关代码工具进行运算
double pow = Math.pow(3,2);
System.out.println(pow);
}
}
关系运算符
package Oprator;
public class Demo03 {
public static void main(String[] args) {
int a = 10;
int b = 20;
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);// !=为不等于
//关系运算符返回的关系采用布尔值 即true或false
}
}
逻辑运算符:
package Oprator;
//逻辑运算符
public class Demo05 {
public static void main(String[] args){
//与(and &&) 或(or ||) 非(相反)
boolean a = true;
boolean b = false;
System.out.println("a && b :"+(a && b));//逻辑与运算 俩个变量为真 结果才为true
System.out.println("a || b :"+(a || b));//逻辑或运算 俩个变量有一个为真 结果为true
System.out.println("!(a && b) :"+!(a && b));//如果是真则为假 如果是假则为真
System.out.println("=========================");
//短路运算
int c = 5;
boolean d = (c < 4) && (c++ < 4);
//在运算c < 4中发现结果为false 后面的语句便停止执行 因此输出c的结果仍为5
System.out.println(d);
System.out.println(c);
}
}
位运算符(了解)
package Oprator;
public class Demo06 {
public static void main(String[] args) {
//位运算符效率极高
/*
a = 0011 1100
b = 0000 1101
a & b = 0000 1100 相同的1取1 其他则取0
a | b = 0011 1101 有1则取1 其他则取0
a ^ b = 0011 0001 单个的1则取1 其他则取0
~b = 1111 0010 0则取1 1则取0
*/
System.out.println(2<<4);//与2*2*2*2*2一样 不过位运算位于底沉逻辑 效率更高
}
}
拓展赋值运算符
package Oprator;
public class Demo07 {
public static void main(String[] args) {
int a = 10;
int b = 20;
a+=b;// a+=b 等于 a = a + b
a-=b;
System.out.println(a);
System.out.println("======================================");
//字符串链接符 + ,String
System.out.println("aaa"+a+b);
/*在字符串后面计算行不通 会默认为添加结合的状态而不不是计算
可以通过添加括号解决System.out.println("aaa"+(a+b)); 或写在前面
*/
System.out.println(a+b+"aaa");//先计算后在添加字符
}
}
三元运算符
package Oprator;
public class Demo08 {
public static void main(String[] args){
//三元运算符
// x ? y : z
//如果x==true 则结果为y 否则为z
int scort = 100;
String type = scort < 60 ? "不及格" : "及格";
System.out.println(type);
}
}