运算符
package Operator;
import java.sql.SQLOutput;
public class simpleOperator {
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(c-d);
System.out.println(a*b);
//注意相除出现小数时候,使用 强制类型转换 或者 *1.0
System.out.println(1.0*a/d);
System.out.println("============================================================");
long ab = 10;
char e ='a';
byte s = 1;
short m = 2;
System.out.println(ab+a);//long
System.out.println(e+s);//int
System.out.println(s+m);//int
//除了 long float double boolean 其余任意值相加减都是int类型
System.out.println("============================================================");
//关系运算符只会返回布尔类型值
System.out.println(a>b);
System.out.println(a<=c);
System.out.println(a==b);
System.out.println(a!=b);
System.out.println("============================================================");
//自增 自减
b = a++; //先赋值,再自增
System.out.println(b); //b=10
System.out.println(a); //a=11
c = ++d; //先自增,再赋值
System.out.println(c); //c=41
System.out.println(d); //d=41
System.out.println("============================================================");
//幂运算 使用 Math 类
double l = Math.pow(2,3); //表示二的三次方
System.out.println(l); //l=8.0
System.out.println("============================================================");
//逻辑运算
boolean cd = true;
boolean ma = false;
System.out.println("cd && ma: " + (cd && ma));//逻辑与运算:都为真,才为 true,若第一个为假,则不进行后续判断
System.out.println("cd || ma: " + (cd || ma));//逻辑或运算:一个为真,即为 true
System.out.println("!(cd && ma): " + !(cd && ma ));//非运算;!(),括号里为假,整个运算才为真
System.out.println("============================================================");
//位于运算
/*
a= 0011 1100;
b= 0000 1101;
a&b = 0000 1100 按每位进行运算,全1为1;遇0为0
a|b = 0011 1101 遇1为1,全0为0
a^b = 0011 0001 相同为0,不同为1
~b = 1111 0010 1变0,0变1
==============================================
<< 左移 相当于对十进制数字 *2
>> 右移 相当于对十进制数字 /2
a = 2<<3 a=8;
此运算在计算机中效率很高
*/
//扩展复制运算符 += -= *= /=
a += b; //a = a+b;
a *= b; //a = a*b;
//字符串连接符 +
System.out.println("K"+a+b);//将 String(“”) 之后的全部连接起来,不进行运算
System.out.println(a+b+"K"+a);//先运算,在连接
System.out.println("============================================================");
/*三元运算符 x ? y:z
①若 x==true,则结果为 y
②若 x==false,则结果为 z
*/
int score = 80;
String type = score>60?"及格":"不及格";
System.out.println(type);//及格
//最后,注意运算优先级,与大多数与数学规范一致
}
}