Jenis data asas Java


Pembolehubah digunakan untuk ingatan untuk menyimpan nilai. Dalam erti kata lain, apabila mencipta pembolehubah, anda perlu memohon ruang dalam ingatan.

Sistem pengurusan memori memperuntukkan ruang storan kepada pembolehubah mengikut jenisnya dan ruang yang diperuntukkan hanya boleh digunakan untuk menyimpan data jenis ini.

memorypic1.jpg

Oleh itu, dengan mentakrifkan pembolehubah daripada jenis yang berbeza, integer, perpuluhan atau aksara boleh disimpan dalam ingatan.

Dua jenis data utama Java:

  • Jenis data terbina dalam

  • Jenis data rujukan


Jenis data terbina dalam

Bahasa Java menyediakan lapan jenis asas. Enam jenis angka (empat integer, dua jenis titik terapung), jenis aksara dan jenis Boolean.

bait:

  • Jenis data bait ialah 8-bit, ditandatangani, integer yang diwakili dalam pelengkap dua; Nilai minimum ialah -128 (-2^7);

  • Nilai maksimum ialah 127 (2^7-1);

  • Nilai lalai ialah 0;

  • Jenis bait digunakan untuk menjimatkan ruang dalam tatasusunan besar, terutamanya menggantikan integer, kerana pembolehubah bait hanya menduduki satu perempat daripada ruang jenis int; Contoh: bait a = 100, bait b = -50.

  • pendek:
  • Jenis data pendek ialah 16-bit, integer pelengkap dua yang ditandatangani

Nilai minimum ialah -32768 (-2^15); Nilai maksimum ialah 32767 (2^15 - 1); Jenis data pendek juga boleh menjimatkan ruang seperti bait. Pembolehubah pendek ialah separuh ruang yang diduduki oleh pembolehubah jenis int; Nilai lalai ialah 0;

  • Contoh: s pendek = 1000, r pendek = -20000.

  • int:
  • Jenis data int ialah integer bertanda 32-bit yang diwakili dalam pelengkap dua; Nilai minimum ialah -2,147,483,648 (-2^31);
  • Nilai maksimum ialah 2,147,483,647 (2^31 - 1);
  • Secara amnya, pembolehubah integer secara lalai untuk menaip int; Nilai lalai ialah 0;

  • Contoh: int a = 100000, int b = -200000.

  • panjang:

Jenis data panjang ialah integer bertanda 64-bit yang diwakili dalam pelengkap dua; Nilai minimum ialah -9,223,372,036,854,775,808 (-2^63); Nilai maksimum ialah 9,223,372,036,854,775,807 (2^63 -1); Jenis ini digunakan terutamanya dalam sistem yang perlu membandingkan integer besar; Nilai lalai ialah 0L;

  • Contoh: panjang a = 100000L, Panjang b = -200000L.

  • terapung:
  • Jenis data apungan ialah nombor titik terapung ketepatan tunggal 32-bit yang mematuhi piawaian IEEE 754; float boleh menjimatkan ruang memori apabila menyimpan tatasusunan titik terapung yang besar; Nilai lalai ialah 0.0f;
  • Nombor titik terapung tidak boleh digunakan untuk mewakili nilai yang tepat, seperti mata wang; Contoh: apungan f1 = 234.5f.
  • ganda:

Jenis data berganda ialah nombor titik terapung berketepatan dua kali, 64-bit, patuh IEEE 754; Jenis lalai nombor titik terapung ialah dua kali ganda; Jenis berganda juga tidak boleh mewakili nilai yang tepat, seperti mata wang; Nilai lalai ialah 0.0d;

    Contoh: d1 ganda = 123.4.
  • boolean:

  • Jenis data boolean mewakili satu bit maklumat; Terdapat hanya dua nilai: benar dan salah; Jenis ini hanya digunakan sebagai bendera untuk merekodkan situasi benar/salah;

  • Nilai lalai adalah palsu; Contoh: boolean one = benar.

  • char:

Jenis char ialah satu aksara Unicode 16-bit; Nilai minimum ialah 'u0000' (iaitu, 0); Nilai maksimum ialah 'uffff' (iaitu, 65,535); Jenis data char boleh menyimpan sebarang aksara; Contoh: huruf char = ‘A’.


  • Instance
  • public class PrimitiveTypeTest {  
        public static void main(String[] args) {  
            // byte  
            System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE);  
            System.out.println("包装类:java.lang.Byte");  
            System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);  
            System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);  
            System.out.println();  
      
            // short  
            System.out.println("基本类型:short 二进制位数:" + Short.SIZE);  
            System.out.println("包装类:java.lang.Short");  
            System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);  
            System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);  
            System.out.println();  
      
            // int  
            System.out.println("基本类型:int 二进制位数:" + Integer.SIZE);  
            System.out.println("包装类:java.lang.Integer");  
            System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);  
            System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);  
            System.out.println();  
      
            // long  
            System.out.println("基本类型:long 二进制位数:" + Long.SIZE);  
            System.out.println("包装类:java.lang.Long");  
            System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);  
            System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE);  
            System.out.println();  
      
            // float  
            System.out.println("基本类型:float 二进制位数:" + Float.SIZE);  
            System.out.println("包装类:java.lang.Float");  
            System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);  
            System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);  
            System.out.println();  
      
            // double  
            System.out.println("基本类型:double 二进制位数:" + Double.SIZE);  
            System.out.println("包装类:java.lang.Double");  
            System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);  
            System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);  
            System.out.println();  
      
            // char  
            System.out.println("基本类型:char 二进制位数:" + Character.SIZE);  
            System.out.println("包装类:java.lang.Character");  
            // 以数值形式而不是字符形式将Character.MIN_VALUE输出到控制台  
            System.out.println("最小值:Character.MIN_VALUE="  
                    + (int) Character.MIN_VALUE);  
            // 以数值形式而不是字符形式将Character.MAX_VALUE输出到控制台  
            System.out.println("最大值:Character.MAX_VALUE="  
                    + (int) Character.MAX_VALUE);  
        }  
    }

  • Run Instance»
  • Klik butang "Run Instance" untuk lihat dalam talian Contoh

  • Hasil keluaran penyusunan kod di atas adalah seperti berikut:

    基本类型:byte 二进制位数:8
    包装类:java.lang.Byte
    最小值:Byte.MIN_VALUE=-128
    最大值:Byte.MAX_VALUE=127
    
    基本类型:short 二进制位数:16
    包装类:java.lang.Short
    最小值:Short.MIN_VALUE=-32768
    最大值:Short.MAX_VALUE=32767
    
    基本类型:int 二进制位数:32
    包装类:java.lang.Integer
    最小值:Integer.MIN_VALUE=-2147483648
    最大值:Integer.MAX_VALUE=2147483647
    
    基本类型:long 二进制位数:64
    包装类:java.lang.Long
    最小值:Long.MIN_VALUE=-9223372036854775808
    最大值:Long.MAX_VALUE=9223372036854775807
    
    基本类型:float 二进制位数:32
    包装类:java.lang.Float
    最小值:Float.MIN_VALUE=1.4E-45
    最大值:Float.MAX_VALUE=3.4028235E38
    
    基本类型:double 二进制位数:64
    包装类:java.lang.Double
    最小值:Double.MIN_VALUE=4.9E-324
    最大值:Double.MAX_VALUE=1.7976931348623157E308
    
    基本类型:char 二进制位数:16
    包装类:java.lang.Character
    最小值:Character.MIN_VALUE=0
    最大值:Character.MAX_VALUE=65535

    Nilai minimum dan maksimum Float dan Double adalah output dalam bentuk tatatanda saintifik, dan "E+nombor " pada akhir mewakili nombor sebelum E Nombor itu hendaklah didarabkan kepada kuasa 10. Contohnya, 3.14E3 ialah 3.14 × 103 =3140, dan 3.14E-3 ialah 3.14 x 10-3 =0.00314.

    Sebenarnya, terdapat satu lagi void jenis asas dalam JAVA, yang juga mempunyai kelas pembungkusan yang sepadan java.lang.Void, tetapi kami tidak boleh mengendalikannya secara langsung.


    Jenis rujukan

    • Di Java, pembolehubah jenis rujukan sangat serupa dengan penunjuk dalam C/C++. Jenis rujukan menunjuk ke objek, dan pembolehubah yang menunjuk ke objek ialah pembolehubah rujukan. Pembolehubah ini ditentukan sebagai jenis tertentu apabila diisytiharkan, seperti Pekerja, Pubby, dsb. Setelah pembolehubah diisytiharkan, jenisnya tidak boleh diubah.

    • Objek dan tatasusunan ialah jenis data rujukan.

    • Nilai lalai untuk semua jenis rujukan adalah nol.

    • Pembolehubah rujukan boleh digunakan untuk merujuk kepada mana-mana jenis yang serasi.

    • Contoh: Tapak tapak = Tapak baharu("php").


    Pemalar Java

    Pemalar ialah kuantiti yang tidak akan diubah suai apabila program dijalankan.

    Gunakan kata kunci terakhir dalam Java untuk mengubah suai pemalar, dan kaedah pengisytiharan adalah serupa dengan pembolehubah:

    final double PI = 3.1415927;

    Walaupun nama pemalar juga boleh dalam huruf kecil, untuk memudahkan pengecaman, huruf besar biasanya digunakan untuk mewakili pemalar.

    Tersurat boleh ditugaskan kepada pembolehubah dari sebarang jenis terbina dalam. Contohnya:

    byte a = 68;
    char a = 'A'

    bait, int, panjang dan pendek semuanya boleh diwakili dalam perpuluhan, perenambelasan dan perlapanan.

    Apabila menggunakan pemalar, awalan 0 mewakili perlapanan, dan awalan 0x mewakili perenambelasan. Contohnya:

    int decimal = 100;
    int octal = 0144;
    int hexa =  0x64;

    Seperti bahasa lain, pemalar rentetan Java juga merupakan jujukan aksara yang terkandung di antara dua tanda petikan. Berikut ialah contoh literal rentetan:

    "Hello World"
    "two\nlines"
    "\"This is in quotes\""

    Kedua-dua pemalar rentetan dan pemalar aksara boleh mengandungi sebarang aksara Unicode. Contohnya:

    char a = '\u0001';
    String a = "\u0001";

    Bahasa Java menyokong beberapa jujukan aksara melarikan diri khas.

                        符号                    字符含义
                        n                    换行 (0x0a)
                        r                    回车 (0x0d)
                        f                    换页符(0x0c)
                        b                    退格 (0x08)
                        s                    空格 (0x20)
                        t                    制表符
                        "                    双引号
                        '                    单引号
                        \                    反斜杠
                        ddd                    八进制字符 (ddd)
                        uxxxx                    16进制Unicode字符 (xxxx)

    Bahagian ini menerangkan jenis data asas Java. Bahagian seterusnya meneroka jenis pembolehubah yang berbeza dan kegunaannya.