黃階低級 - 《 Java 核心》- 3.5 運算符(二)- 修改0次

1、數學函數與常量

  • 在 Java 中,一些高級需要藉助 Math 類。
  • 兩個用於表示 π 和 e 常量的近似值。

    Math.PI
    Math.E

  • 注意:Math類爲了達到最快的性能,所有的方法都是使用計算機浮點單元中的例程;如果爲了得到一個可預測的結果,應該使用 StrictMath 。

2、數據類型轉換

數值之間的合法轉換

  • 實心箭頭表示無信息丟失的轉換,虛箭頭表示有可能有精度損失的轉換。
int i = 123456789;
float f = i;
double d = i;
System.out.println(f);// 輸出1.23456792E8,少了一位精度
System.out.println(d);// 輸出1.23456789E8,沒有精度損失

3、強制類型轉換

  • 強制類型的轉換很可能丟失一些信息。
double d = 9.997;
int i = (int) d;
System.out.println(i);// 輸出9,小數部分信息丟失
  • 如果類型轉換超過了目標類型的表示範圍,結果會截斷成一個完全不同的值。
int i = 300;
byte b = (byte) i;
System.out.println(b);//輸出44
/*
 * 300的二進制是 100101100
 * byte佔一個字節,截取成 00101100
 * 轉換成十進制是44
 * */

4、括號與運算符級別

優先級 運算符 綜合性
1 ()[]. 從左到右
2 !+(正)-(負)~ ++ - - 從右向左
3 */% 從左到右
4 +(加)-(減) 從左向右
5 << >> >>> 從左到右
6 < <= >= > instanceof 從左到右
7 == != 從左到右
8 &(按位與) 從左到右
9 ^ 從左到右
10 | 從左到右
11 && 從左到右
12 || 從左到右
13 ?: 從右向左
14 = += -= *= /= %= &= |= ^= ~= <<= >>= >>>= 從右向左
  • 爲了便於記憶,想了一個記憶口訣,通過單目和三目的恩怨情仇聯繫起來:

    單目四則畏關係
    邏輯三目來賦值
    單目:! +(正) -(負)~ ++ - -
    四則:* / % +(加) -(減)
    畏:<< >> >>>
    關係:< <= >= > == !=
    邏輯:& ^ | && ||
    三目:?:
    賦值:= += -= *= /= %= &= |= ^= ~= <<= >>= >>>=

5、枚舉類型

  • 有時變量的取值只在一個有限的集合內,可以使用自定義枚舉,枚舉類型包括有限個命名的值。

  • 枚舉類型的值是通過運行期構造出來對象來表示的,所以不能使用 “==” 運算符。

  • 枚舉類型有利於擴展 switch 語句使用範圍。

public enum weekDayEnum {
        Mon, Tue, Wed, Thu, Fri, Sat, Sun
    };//定義枚舉類型

static void weekDaySchedule() {
    weekDayEnum today = weekDayEnum.Sat;
    //獲得一個枚舉對象
    switch (today) {
        case Mon:
            System.out.println("work work work");
            break;
        case Sat:
            System.out.println("go to paly basketball");
            break;
        default:
            System.out.println("you must be kidding");
            break;
    }
}
發佈了41 篇原創文章 · 獲贊 2 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章