多元运算先乘除再加减
System.out.println("------一元运算符---------"); //++,-- 自增,自减 只需要自己一个数 所以称为一元运算符 int f=3; int g=f++;//执行完这行代码后再给f重新赋值 //f=f+1; 4=3+1 System.out.println(g); System.out.println(f); //f=f+1; 5=4+1 int h=++f;//执行这行前先给f赋新值 System.out.println(h); System.out.println("---------二元运算符-----------"); //二元运算符 int a = 10; int b = 15; int c = 20; int d = 25; System.out.println(a+b); System.out.println(a-b); System.out.println(a*b); System.out.println(a/(double)b); System.out.println(a%b); System.out.println(b%a);//b÷a=1....5 System.out.println("--------三元运算符-----------"); //X ? Y:Z //如果X==true 结果为Y 否则结果为Z int score = 80; String type = score>60 ? "及格":"不及格"; System.out.println(type); System.out.println("------运算结果的类型转换---------"); byte w1=8; short w2=10; int w3=5; long w4=9999999999L; System.out.println(w1+w2+w3+w4);//long类型结果 如果含有long结果都为long类型 System.out.println(w1+w2+w3);//int类型结果 如果没有long结果都为int类型,无论你其中有没有int System.out.println(w1+w2);//int类型结果 System.out.println((double) w1+w2);//强制转换后结果为double System.out.println("---------------"); System.out.println(w1==w2); System.out.println(w1>=w3); System.out.println(w1!=w4); System.out.println("-------幂运算--------"); //幂运算使用Math工具类来操作 double result = Math.pow(2,3); System.out.println(result); System.out.println("-------逻辑运算符--------"); //逻辑运算符 与(&&) 或(||) 非(!取反) boolean key1 = true; boolean key2= false; System.out.println("key1&&key2:"+(key1&&key2)); //两个都为真结果为真 两个都为假结果为假 System.out.println("key1||key2:"+(key1||key2)); //一个为真结果为真 System.out.println("!(key1&&key2):"+!(key1&&key2)); //短路运算:意思是在与的条件下,如果前面的为假结果一定是假,后面的值不会进行判断 int key3= 5; boolean o= (key3<4)&&(key3++<4); System.out.println(o); System.out.println(key3);//key3++并没有被执行变为6,说明后面(key3++<4);部分已短路未执行 System.out.println("--------位运算-------"); /*位运算底层多了解计算机组成原理 * A= 0011 1101 * B= 0101 0010 * ----------------- * A&B= 0001 0000 0=false 1=true * A|B= 0111 1111 * A^B= 0110 0000 亦或 00相同是0 01不同是1 11相同取反是0 * ~B= 1010 1101 * * * 2*8怎样运算最快? * 将2*8 拆分成2*2*2*2 * 位运算跟底层二进制打交道,效率极高 * << *2 左移相当于乘2 * >> /2 右移相当于除2 * */ System.out.println(2<<3); System.out.println("--------拓展赋值运算符-------"); int nu1=10; int nu2=5; nu1+=nu2;//nu1=nu1+nu2; System.out.println(nu1); nu1-=nu2;//nu1=nu1-nu2; System.out.println(nu1); //字符串连接符 System.out.println(a+b); System.out.println(""+a+b); // 1015 在+前面是String类型就会把其他都转换成String再进行连接 System.out.println(a+b+"");// 25