<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## [字面值常量](https://lingcoder.gitee.io/onjava8/#/book/04-Operators?id=%e5%ad%97%e9%9d%a2%e5%80%bc%e5%b8%b8%e9%87%8f) 通常,當我們向程序中插入一個字面值常量(**Literal**)時,編譯器會確切地識別它的類型。當類型不明確時,必須輔以字面值常量關聯來幫助編譯器識別。代碼示例: ~~~ // operators/Literals.java public class Literals { public static void main(String[] args) { int i1 = 0x2f; // 16進制 (小寫) System.out.println( "i1: " + Integer.toBinaryString(i1)); int i2 = 0X2F; // 16進制 (大寫) System.out.println( "i2: " + Integer.toBinaryString(i2)); int i3 = 0177; // 8進制 (前導0) System.out.println( "i3: " + Integer.toBinaryString(i3)); char c = 0xffff; // 最大 char 型16進制值 System.out.println( "c: " + Integer.toBinaryString(c)); byte b = 0x7f; // 最大 byte 型16進制值 01111111; System.out.println( "b: " + Integer.toBinaryString(b)); short s = 0x7fff; // 最大 short 型16進制值 System.out.println( "s: " + Integer.toBinaryString(s)); long n1 = 200L; // long 型后綴 long n2 = 200l; // long 型后綴 (容易與數值1混淆) long n3 = 200; // Java 7 二進制字面值常量: byte blb = (byte)0b00110101; System.out.println( "blb: " + Integer.toBinaryString(blb)); short bls = (short)0B0010111110101111; System.out.println( "bls: " + Integer.toBinaryString(bls)); int bli = 0b00101111101011111010111110101111; System.out.println( "bli: " + Integer.toBinaryString(bli)); long bll = 0b00101111101011111010111110101111; System.out.println( "bll: " + Long.toBinaryString(bll)); float f1 = 1; float f2 = 1F; // float 型后綴 float f3 = 1f; // float 型后綴 double d1 = 1d; // double 型后綴 double d2 = 1D; // double 型后綴 // (long 型的字面值同樣適用于十六進制和8進制 ) } } ~~~ 輸出結果: ~~~ i1: 101111 i2: 101111 i3: 1111111 c: 1111111111111111 b: 1111111 s: 111111111111111 blb: 110101 bls: 10111110101111 bli: 101111101011111010111110101111 bll: 101111101011111010111110101111 ~~~ 在文本值的后面添加字符可以讓編譯器識別該文本值的類型。對于**Long**型數值,結尾使用大寫`L`或小寫`l`皆可(不推薦使用`l`,因為容易與阿拉伯數值 1 混淆)。大寫`F`或小寫`f`表示**float**浮點數。大寫`D`或小寫`d`表示**double**雙精度。 十六進制(以 16 為基數),適用于所有整型數據類型,由前導`0x`或`0X`表示,后跟 0-9 或 a-f (大寫或小寫)。如果我們在初始化某個類型的數值時,賦值超出其范圍,那么編譯器會報錯(不管值的數字形式如何)。在上例的代碼中,**char**、**byte**和**short**的值已經是最大了。如果超過這些值,編譯器將自動轉型為**int**,并且提示我們需要聲明強制轉換(強制轉換將在本章后面定義),意味著我們已越過該類型的范圍界限。 八進制(以 8 為基數)由 0~7 之間的數字和前導零`0`表示。 Java 7 引入了二進制的字面值常量,由前導`0b`或`0B`表示,它可以初始化所有的整數類型。 使用整型數值類型時,顯示其二進制形式會很有用。在 Long 型和 Integer 型中這很容易實現,調用其靜態的`toBinaryString()`方法即可。 但是請注意,若將較小的類型傳遞給**Integer.**`toBinaryString()`時,類型將自動轉換為**int**。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看