java中的运算符、表达式

3.1.赋值运算符与赋值表达式的说明和用法
赋值运算符:”=”
例如:int num = 100;
3.2.算术运算符与算术表达式的说明和用法
算术运算符:+ - * / % ++ - -
例如:

public class YunSuan{
      public static void main(String args[]){
            //+  -  *  /  % 
            int num1=20;
            int num2=6;
            System.out.println("num1+num2=="+(num1+num2));
            System.out.println("num1-num2=="+(num1+num2));
            System.out.println("num1*num2=="+(num1*num2));
            //当参数算术运算的数据是整数时,运算结果就是整数
            System.out.println("num1/num2=="+(num1/num2));
            System.out.println("num1%num2=="+(num1%num2));
          }
}

四则混合运算

public class YunSuan2{
     public static void main(String args[]){
          //四则混合运算,参数运算的数据类型不是同一类
          //当参与算术运算的数据类型不是同一类时
          //它的运算结果的数据类型是精度最高的数据类型
                 byte a=100;
                 short b=200;
                 int c=300;
                 long d=400L;
                 float e =6.66f;
                 double f=2.7;
                     System.out.println(a+b*c+d/e*f);
             }
 }

3.3.”++”与”–”的具体用法
         “++”— 自动加1
(1)变量++;–【先用后加】
(2).++变量;–【先加后用】

          “–”---- 自动减1
   (3.)变量–;【先用后减】
   (4).–变量;【先减后用】
例如:

public class YunSuan3{
     public static void main(String args[]){
            //1.变量++;--【先用后加】
            int num=100;
            System.out.println("num++ =="+num++);
            //100
            System.out.println("num++ =="+num++);
            //101
            //2.++变量;--【先加后用】
            int num1=10;
             System.out.println("++num1 =="+(++num1)); 
              //3.变量--;--【先用后减】
             int  num2=111;
             System.out.println("num2-- =="+num2--);
             System.out.println("num2-- =="+num2--);
            //4.--变量;--【先减后用】
              int  num3=18;
             System.out.println("--num3=="+--num3;
               }
           }

3.4.关系运算符与关系表达式的说明和用法
关系运算符: > < >= <= == !=

public class GuanXi{
      public static void main(String args[]){
           //关系运算符:  >  <  >=  <=  ==  !=
          //关系运算符的结果一定是boolean值
          int num1=20;
          int num2=10;
           System.out.println(num1+">"+num2+"="+(num1>num2));
           System.out.println(num1+"<"+num2+"="+(num1<num2));
           System.out.println(num1+">="+num2+"="+(num1>=num2));
           System.out.println(num1+"<="+num2+"="+(num1<=num2));
           System.out.println(num1+"=="+num2+"="+(num1==num2));
           System.out.println(num1+"!="+num2+"="+(num1==num2));
            }
}

3.5.逻辑运算符与逻辑表达式的说明和用法
逻辑运算符被分成2大类:
1.逻辑运算符 【逻辑或 || 逻辑与 && 逻辑反 !】
例如:

public class LuoJi{
     public  static void main(String args[]){
            //1.逻辑运算符 【逻辑或 ||   逻辑与 &&  逻辑反  !】
           //逻辑运算符的运算值和运算结果一定是boolean
           int s1=100;
           int s2=50;
           //逻辑或 ||
            boolean  b1 =((s1+s2)>10) || ((s1-s2)<3) ;
            System.out.println("b1=="+b1);
           //逻辑与&&
            boolean  b2 =((s1+s2)>10) && ((s1-s2)<3) ;
            System.out.println("b2=="+b2);
          //逻辑反!
            boolean  b3 =((s1+s2)>10) && ((s1-s2)<3) ;
             System.out.print("b3=="+b3);
      }
}

2.位运算符
3.6.短路与和短路或
短路或–逻辑或的运算规则
【运算符号左右两边都是false的时候,运算结果就一定是false,如果出现一个true,运算结果就一定是true】
短路或—短路就是运算符号只运算一边
当运算符号左边的结果为true时候,右边不用计算,结果就一定是true.

短路与–逻辑与的运算规则
【运算符号左右两边都是true的时候,运算结果就一定是true,如果出现一个false,运算结果就一定是false】
短路与—短路就是运算符号只运算一边
当运算符号左边的结果为false时候,右边不用计算,结果就一定是false

例如:

public class LuoJi2{
	public static  void  main(String args[]){
		//短路或:当运算符号左边的结果为true时候,右边不用计算,结果就一定是true.
		int num1=10;
		//System.out.println(num1/0);
        boolean b1= (num1 < 20) || ((num1/0)>10);
		System.out.println("b1="+b1);

		//短路与:当运算符号左边的结果为false时候,右边不用计算,结果就一定是false
		int num2=100;
        boolean b2= (num2 < 20) && ((num2/0)>10);
		System.out.println("b2="+b2);
	}
}

3.7.位运算符的用法
位运算:就是将参与运算的数据转换成2进制【0101001】
10进制与2进制的转换 : 8421码
1. 原码
原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值.
2. 反码
反码的表示方法是:
正数的反码是其本身【原码】
负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.
3. 补码
补码的表示方法是:
(1)正数的补码就是其本身【原码】
(2)负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)
整数的2进制就是原码
负数的2进制实质上补码表示。
-3 – 10000011—11111100—11111101----【负数的原码取反+1】{符号位不变}
-3–3—00000011–11111100—11111101 —【负数的绝对值的原码的取反+1】
-7–7--00000111—11111000----11111001
-12–12–00001100—11110011—11110100

常见的6种位运算符号
1.& 按位与 相同为1,不同为0。
例如:3 & -7
0000 0011 3
1111 1001 -7
0000 0001 1
2.| 按位或 相同位只要一个为1即为1。
例如:3 | -7
0000 0011 3
1111 1001 -7
1111 1011 -5
3.^ 按位异或 相同位不同则为1,相同则为0。
例如:3 | -7
0000 0011 3
1111 1001 -7
1111 1010 -6
4.~取反 0和1全部取反
例如:~3
0000 0011 3
1111 1100 — 1111 1011 – 1000 0100 -4
5.<<左移位 2进制整体向左移动指定的位数
例如 : 3 << 2
0000 0011 3
0000 0110 移动1位
0000 1100 移动2位 — 12
6.>>右移 2进制整体向右移动指定的位数
例如 : 3 >> 2
0000 0011 3
0000 0001 移动1位
0000 0000 移动2位 — 0
例如:

public class LuoJi3{
	public static  void  main(String args[]){
		//1.& 按位与 相同为1,不同为0。
		int num1=3;
		int num2=-7;
		System.out.println(num1 & num2); // 1
		//2.| 按位或  相同位只要一个为1即为1。
		System.out.println(num1 | num2); // -5
		//3.^ 按位异或  相同位不同则为1,相同则为0。
		System.out.println(num1 ^ num2); // -6 
		//4.~取反   0和1全部取反
		System.out.println(~num1); // -4
		//5.<<左移位  2进制整体向左移动指定的位数
		System.out.println(num1 << 2); //
		//6.>>右移位  2进制整体向右移动指定的位数
		System.out.println(num1 >> 2); // 0
		System.out.println(2 << 3); 
	}	
}

运算符号的优先级

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值