不同数据类型的数做运算,若其中有long或double类型,则结果为long或double类型,否则全为int类型,若同时存在long与double则结果为double类型。
package Package2;
public class Demon1 {
public static void main(String[] args) {
int a = 10;
int b = 20;
double c = 20;
System.out.println(a/b);//结果为0
System.out.println(a/c);//结果为0.5
System.out.println(a/(double)20);//结果为0.5
} //int转换为double
}
关系运算符返回布尔值,true或false
自增自减
++和--为自增自减
int a =1;
int b =1;
System.out.println(a);//1
System.out.println(b);//1
b = a++;//先把a复制给b,然后a加1
System.out.println(a);//2
System.out.println(b);//1
int a =1;
int b =1;
System.out.println(a);//1
System.out.println(b);//1
b = ++a;//先把a加1,再把a赋值给b
System.out.println(a);//2
System.out.println(b);//2
可以记为a++是a在前++在后故先赋值再自增,++a同理。
使用工具类操作运算。
double pow = Math.pow(2,3);
//数据类型 数据名 = math.pow(a,b) 表示a的b次方
System.out.println(pow);//pow=8
boolean t = true;
boolean f = false;
System.out.println("t&&f:"+(t&&f));//t&&f:false
//"t&&f:"引号内为字符串+t与f的结果,+将两部分拼接
System.out.println(t||f);//true
System.out.println(!(t&&f));//true
1.在与运算中,如a&&b,若a为false,则直接返回false,不进行b计算。 即b包含计算过程,计算也不会进行。
2.在或运算中,如a||b,若a为true则直接返回true,不进行b计算。 即b包含计算过程,计算也不会进行。
<<为左移,左移1一位等于乘以2
右移为>>,右移一位等一除以2
System.out.println(3<<2);//3*2*2=12
效率极高
int a =2;
int b = 20;
System.out.println(""+a+b);//220
+为字符串连接符在运算中出现string类型的数据,计算结果会以string类型表示。
int a =2;
int b = 20;
System.out.println(a+b+"");//22
从以上两者能够看出,若int数字计算在前,则计算结果在与string类型拼接,若string类型在前,则直接拼接成string类型而不进行a+b的数学计算。1
x ? y : z 表示如果x==true,则结果为y,否则结果为z。
int point = 80;
String type = point >60 ? "合格" : "不合格";
System.out.println(type);//输出 合格
int point = 50;
String type = point >60 ? "合格" : "不合格";
System.out.println(type);//输出 不合格
可分为两部分 x ? 和y:z记忆,第一部分表示判断x是否为真,第二部分:若为真则结果为y,否则为z
原文:https://www.cnblogs.com/patientLIN/p/13921771.html