操作符:

5.操作符  
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。
public class Test{
  public static void main(String[] args){
    int i, k;
    i = 10;
/*下面一句话的意义是:假如i小于零,k就等于-i,否则k就等于i*/
    k = i < 0 ? -i : i; // get absolute value of i
    System.out.print("Absolute value of ");
    System.out.println(i + " is " + k);

    i = -10;
    k = i < 0 ? -i : i; // get absolute value of i
    System.out.print("Absolute value of ");
    System.out.println(i + " is " + k);
  }
}

result is:
Absolute value of 10 is 10
Absolute value of -10 is 10

5.1 算术操作符


运算符

使用

描述

+

op1 + op2

op1 加上op2

-

op1 - op2

op1 减去op2

*

op1 * op2

op1乘以op2

/

op1 / op2

op1 除以op2

%

op1 % op2

op1 除以op2的余数

 

  这里注意,当一个整数和一个浮点数执行操作的时候,结果为浮点型。整型数是在操作之前转换为一个浮点型数的。

   




5.2 自增自减操作符

下面的表格总结自增/自减运算符:

运算符

用法

描述

++

a++

自增1;自增之前计算op的数值的。

++

++b

自增1;自增之后计算op的数值的。

--

a--

自减1;自减之前计算op的数值的。

--

--b

自减1;自减之后计算op的数值的。

5.3 Bitwise Operators(位运算符)
~
&
|
>>
<<

int a = 3; // 0 + 2 + 1 or 0011 in binary
int b = 6; // 4 + 2 + 0 or 0110 in binary
int c = a | b;//c=0111
int d = a & b;//d=0010


public class Test {


      public static void main(String args[])
      {
          int k = 3; // 0 + 2 + 1 or 0011 in binary
          int b = 6; // 4 + 2 + 0 or 0110 in binary
          int c = k | b;//c=0111
          int d = k & b;//d=0010
          System.out.println("c @马克-to-win is "+c);
          System.out.println("d is "+d);
      }
}


结果是:
c @马克-to-win is 7
d is 2




5.4 关系运算符

>,>=,<,<=,==,!=

5.5 逻辑运算符

  如下表所示;

运算符

用法

什么情况返回true

&&

o1 && o2

Short-circuit(短路) AND, o1 和 o2都是true,有条件地计算o2

||

o1 || o2

o1 或者 o2是true,有条件地计算o2

!

! o

o为false

&

o1 & o2

o1 和 o2都是true,总是计算o1和o2

|

o1 | o2

o1 或者 o2是true,总是计算o1和o2

 


public class Ternary{
  static boolean doThing()
  {
    System.out.println("in doThing");
    return true;
  }
  public static void main(String[] args){
    if((2>3)& doThing()) {
        System.out.println("ok");
    }

  }
}

result is:

in doThing

 

 

public class Ternary{
  static boolean doThing()
  {
    System.out.println("in doThing");
    return true;
  }
  public static void main(String[] args){
    if((2>3)&& doThing()) {
        System.out.println("ok");
    }

  }
}

result is:

什么结果也没有。

 

5.6 赋值运算符

  

i = i + 2;

可以这样简化:

i += 2;

上面的两行是等价的。




6.控制流程 

6.1 if-else statement




public class Test{
  public static void main(String[] args){
    int num = 5;
    int mod = num %2;
    if (num ==0)
        System.out.println(num + "是零");
    else if (mod != 0)
        System.out.println(num + "是一个奇数");
    else
        System.out.println(num + "是一个偶数");
  }
}

result is:

5是一个奇数