欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

特殊的赋值运算符

程序员文章站 2022-06-27 20:45:04
1、与算术运算有关的 a += b ; 类似于 a = a + b ; a -= b ; 类似于 a = a - b ; a *= b ; 类似于 a = a * b ; a /= b ; 类似于 a = a / b ; a %= b ; 类似于 a = a % b ; 2、与位运算中移位有关的 a ......

 1、与算术运算有关的
          a += b ; 类似于 a = a + b ;
          a -= b ; 类似于 a = a - b ;
          a *= b ; 类似于 a = a * b ;
          a /= b ; 类似于 a = a / b ;
          a %= b ; 类似于 a = a % b ;
 
 2、与位运算中移位有关的
          a >>= b ; 类似于 a = a >> b ;
          a >>>= b ; 类似于 a = a >>> b ;
          a <<= b ;类似于 a = a << b ;
 
 3、与其他位运算有关的
          a |= b ; 类似于 a = a | b ;
          a &= b ; 类似于 a = a & b ;
          a ^= b ; 类似于 a = a ^ b ;

public class assignment {

    public static void main( string[] args ) {

        int first = 5 ; // 默认就是正数
        system.out.println( "first : " + first );

        int second = -5 ; // 注意这里的 等号 之后的 - 表示负号
        system.out.println( "second : " + second );

        int third = +5 ; // 注意这里的 等号 之后的 + 表示 正号
        system.out.println( "third : " + third );

        system.out.println( "~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" );

        char x = 100 ; // byte 、short 、char
        system.out.println( "x : " + x );
        x += 2 ; // x += 2 【类似于】 x = x + 2 ,因为 x += 2 不会发生自动类型提升,而 x = x + 2 可能会发生类型提升
        system.out.println( "x : " + x );

        system.out.println( "~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" );

        byte p = 7 ; // 00000111
        system.out.println( "p : " + p );
        p >>= 1 ; // p = p >> 1 ;
        system.out.println( "p : " + p );

        system.out.println( "~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" );

        int r = 5 ;
        int s = 7 ;
        system.out.println( "r : " + r + " , s : " + s );

        r ^= s ; // r = r ^ s ;
        s ^= r ; // s = s ^ r ;
        r ^= s ; // r = r ^ s ;

        system.out.println( "r : " + r + " , s : " + s );

    }

}