Java ชนิดข้อมูลพื้นฐาน
ตัวแปรคือการใช้หน่วยความจำเพื่อเก็บค่า นั่นคือเมื่อตัวแปรถูกสร้างขึ้นเมื่อจำเป็นที่จะต้องใช้พื้นที่ในหน่วยความจำ
ระบบการจัดการหน่วยความจำตามชนิดของตัวแปรในการจัดสรรพื้นที่เก็บข้อมูลสำหรับตัวแปรพื้นที่จัดสรรเท่านั้นที่สามารถใช้ในการเก็บข้อมูลประเภทนี้
ดังนั้นโดยความหมายของประเภทที่แตกต่างกันของตัวแปรที่สามารถเก็บจำนวนเต็มทศนิยมหรือตัวละครในหน่วยความจำ
Java สองประเภทข้อมูล:
- Built-in ชนิดข้อมูล
- ชนิดข้อมูลอ้างอิง
Built-in ชนิดข้อมูล
ภาษา Java ให้แปดประเภทพื้นฐาน หกชนิดชนิดที่เป็นตัวเลข (สี่จำนวนเต็มสองจุดลอยตัว) ประเภทตัวละครที่มีบูลีน
ไบต์:
- ชนิดข้อมูลไบต์เป็น 8 บิตลงนามจำนวนเต็มในการเป็นตัวแทนที่สมบูรณ์สอง;
- ค่าต่ำสุดคือ -128 (-2 ^ 7);
- ค่าสูงสุดคือ 127 (2 ^ 7-1);
- ค่าเริ่มต้นคือ 0;
- ประเภทไบต์ใช้ใน array ขนาดใหญ่ของการประหยัดพื้นที่สถานที่หลักของจำนวนเต็มเพราะไบต์ int พื้นที่ครอบครองโดยตัวแปรเพียงหนึ่งในสี่ประเภท;
- ตัวอย่าง: ไบต์ = 100 ไบต์ B = -50
ระยะสั้น:
- ชนิดข้อมูลสั้น ๆ คือ 16 บิตลงนามจำนวนเต็มในการเป็นตัวแทนที่สมบูรณ์สอง
- ค่าต่ำสุดคือ -32768 (-2 ^ 15);
- ค่าสูงสุดคือ 32767 (2 ^ 15--1);
- ชนิดข้อมูลสั้นจะเป็นประหยัดพื้นที่เป็นไบต์ ตัวแปรสั้น ๆ คือตัวแปร int ครองครึ่งหนึ่งของพื้นที่;
- ค่าเริ่มต้นคือ 0;
- ตัวอย่าง: สั้น = 1000, R = -20,000 สั้น
int:
- int ชนิดข้อมูลเป็น 32 บิตลงนามเป็นตัวแทนที่สมบูรณ์แบบไบนารีของจำนวนเต็ม;
- ค่าต่ำสุดคือ -2147483648 (-2 ^ 31);
- ค่าสูงสุดคือ 2.147.483.647 (2 ^ 31--1);
- ในค่าเริ่มต้นตัวแปรจำนวนเต็มทั่วไป int ชนิด;
- ค่าเริ่มต้นคือ 0;
- ตัวอย่าง: int A = 100000 int B = -200000
ยาว:
- ชนิดข้อมูลยาว 64 บิตลงนามจำนวนเต็มในการเป็นตัวแทนที่สมบูรณ์สอง;
- ค่าต่ำสุดคือ -9,223,372,036,854,775,808 (-2 ^ 63);
- ค่าสูงสุดคือ 9.223.372.036.854.775.807 (2 ^ 63-1);
- ประเภทนี้ส่วนใหญ่จะใช้ในระบบจำเป็นต้องเป็นจำนวนเต็มขนาดใหญ่
- ค่าเริ่มต้นคือ 0L;
- ตัวอย่าง: ยาว = 100000L ยาว B = -200000L
ลอย:
- ชนิดข้อมูลลอยเป็นความแม่นยำเดียว 32 บิตอีอีอี 754 ที่สอดคล้องกับมาตรฐานลอยจุด;
- ลอยลอยกลุ่มใหญ่ในเวลาที่จัดเก็บสามารถประหยัดพื้นที่หน่วยความจำ
- ค่าเริ่มต้นคือ 0.0f;
- จำนวนจุดลอยตัวไม่สามารถนำมาใช้สำหรับค่าที่แน่นอนเช่นเงิน
- ตัวอย่าง: ลอย F1 = 234.5f
คู่:
- ชนิดข้อมูลคู่เป็นคู่ที่มีความแม่นยำ 64 บิตอีอีอี 754 ที่สอดคล้องกับมาตรฐาน floating point;
- ประเภทเริ่มต้นสำหรับจุดลอยตัวประเภทคู่
- ประเภทคู่ไม่สามารถเป็นตัวแทนค่าเดียวกันแน่นอนเช่นสกุลเงิน;
- ค่าเริ่มต้นคือ 0.0d;
- ตัวอย่าง: D1 คู่ = 123.4
บูลีน:
- ชนิดข้อมูลแบบบูลเป็นหนึ่งในบิตของข้อมูล;
- เพียงสองค่า: ความจริงและเท็จ;
- ประเภทนี้จะถูกบันทึกไว้เพียงเป็นสัญลักษณ์ของสภาพจริง / เท็จ;
- ค่าเริ่มต้นเป็นเท็จ;
- ตัวอย่าง: บูลีนหนึ่ง = true
ถ่าน:
- ประเภทถ่านเป็น 16 บิตอักขระ Unicode เดียว;
- ค่าต่ำสุดคือ '\ u0000' (นั่นคือ 0);
- ค่าสูงสุดคือ '\ uffff' (นั่นคือ 65,535);
- ชนิดข้อมูลสามารถเก็บถ่านตัวอักษรใด ๆ ;
- ตัวอย่าง: จดหมายถ่าน = 'A'
ตัวอย่าง
สำหรับประเภทพื้นฐานของชนิดของตัวเลขในช่วงที่เราไม่จำเป็นต้องจำที่จะบังคับเพราะค่าของพวกเขาได้รับการกำหนดเป็นค่าคงที่ในระดับที่สอดคล้องเสื้อคลุม ลองพิจารณาตัวอย่างต่อไปนี้:
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); } }
รวบรวมโค้ดข้างต้นออกผลมีดังนี้
基本类型: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
ค่าต่ำสุดและสูงสุด Float และ Double อยู่ในรูปแบบของการส่งออกทางวิทยาศาสตร์ที่ลงท้ายด้วย "E + หมายเลข" หมายถึงจำนวนก่อนอีคูณด้วยจำนวน 10 TH ยกตัวอย่างเช่น 3.14E3 คือ 3.14 × 10 3 = 3140,3.14E-3 คือ 3.14 x 10 -3 = 0.00314
ในความเป็นจริงนอกจากนี้มีพื้นฐานประเภท JAVA เป็นโมฆะก็ยังมีเสื้อคลุมระดับที่สอดคล้องกัน java.lang.Void แต่เราไม่สามารถจัดการกับพวกเขา
ชนิดการอ้างอิง
- ใน Java ประเภทตัวแปรอ้างอิงจะคล้ายกับ C / C ++ ชี้ ชนิดการอ้างอิงชี้ไปยังวัตถุที่ชี้ไปที่ตัวแปรวัตถุเป็นตัวแปรอ้างอิง ตัวแปรเหล่านี้จะถูกระบุไว้ในประกาศสำหรับประเภทเฉพาะเช่นพนักงาน Pubby เช่น เมื่อประกาศหลังจากที่ตัวแปรประเภทไม่สามารถเปลี่ยนแปลงได้
- วัตถุอาร์เรย์มีการอ้างอิงชนิดข้อมูล
- ค่าเริ่มต้นสำหรับทุกประเภทอ้างอิงเป็นโมฆะ
- ตัวแปรอ้างอิงที่สามารถใช้กับประเภทของการอ้างอิงใด ๆ ที่เข้ากันได้
- ตัวอย่าง: เว็บไซต์ Site = เว็บไซต์ใหม่ ( "w3big")
คง Java
ค่าคงที่ในโปรแกรมที่กำลังทำงานจำนวนเงินที่จะไม่ได้รับการแก้ไข
กับคำหลักสุดท้ายในการแก้ไข Java คงที่และตัวแปรลักษณะคำสั่งที่คล้ายกัน:
final double PI = 3.1415927;
แม้ว่าชื่ออย่างต่อเนื่องเพื่อเป็นตัวพิมพ์เล็ก แต่เพื่อความสะดวกในการระบุตัวอักษรตัวพิมพ์ใหญ่มักจะคงที่
ตัวอักษรสามารถกำหนดให้กับตัวแปรในตัวชนิดใด ๆ ตัวอย่างเช่น:
byte a = 68; char a = 'A'
ไบต์ int ยาวสั้นและสามารถนำมาใช้ในฐานสิบหกสิบแปดและวิธีการที่จะเป็นตัวแทน
เมื่อใช้เป็นเวลาคงคำนำหน้า 0? ระบุฐานแปดเลขฐานสิบหกและคำนำหน้า 0x ตัวแทน ตัวอย่างเช่น:
int decimal = 100; int octal = 0144; int hexa = 0x64;
และภาษาอื่น ๆ , Java ค่าคงที่สตริงจะรวมอยู่ในลำดับของตัวอักษรระหว่างสองคำพูด ต่อไปนี้เป็นตัวอย่างของสายอักขระตัวอักษร:
"Hello World" "two\nlines" "\"This is in quotes\""
ค่าคงที่สตริงและค่าคงที่ตัวละครสามารถมีอักขระ Unicode ใด ๆ ตัวอย่างเช่น:
char a = '\u0001'; String a = "\u0001";
สนับสนุนภาษา Java สำหรับลำดับหนีพิเศษบางอย่าง
สัญญลักษณ์ | ความหมายของตัวละคร |
---|---|
\ n | อาหารเส้น (0x0A) |
\ r | กลับรถ (0x0D) |
\ F | Formfeed (0x0c) |
\ B | Backspace (0x08) |
\ S | พื้นที่ (0x20) |
\ t | แท็บ |
\ " | คำพูดคู่ |
\ ' | ราคาเดียว |
\\ | ทับขวา |
\ Ddd | อักขระฐานแปด (DDD) |
\ Uxxxx | อักขระเลขฐานสิบหก Unicode (xxxx) |
ส่วนนี้จะอธิบายขั้นพื้นฐาน Java ชนิดข้อมูล ส่วนถัดไปสำรวจประเภทที่แตกต่างกันของตัวแปรและการใช้งานของพวกเขา