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.
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’.
Instancepublic 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.