Java Data types และ Java Primitive types  



ประเภทข้อมูล ชวา ดั้งเดิม

ชนิดข้อมูลใน Java หมายถึง ประเภทของค่า ตัวแปรสามารถถือ ในบทความก่อนหน้านี้เราได้เห็นวิธีการประกาศก ตัวแปร. ในบทช่วยสอนนี้เราจะเรียนรู้เกี่ยวกับประเภทข้อมูลต่างๆและวิธีใช้ในการประกาศตัวแปร เราจะพูดถึง Primitive Data types และ Non-Primitive Data types ในบทความนี้

สำหรับตัวแปรใด ๆ ที่เราประกาศประเภทข้อมูลเป็นสิ่งที่จำเป็นเนื่องจากแสดงถึงจำนวนหน่วยความจำที่ตัวแปรต้องการในการจัดเก็บค่า ให้เรารวบรวมการประกาศตัวแปรอีกครั้ง ตัวอย่างเช่นในโค้ดด้านล่างเราได้ประกาศและเริ่มต้นตัวแปรจำนวนเต็มด้วยค่า 10

int a = 10;

ประเภทข้อมูลใน Java มี 2 ประเภท:

  • ชนิดข้อมูลดั้งเดิม - รวมถึงไบต์สั้น int ยาวถ่านคู่ลอยและบูลีน
  • Non Primitive data types - ครอบคลุมถึง String, Array, Class และ Interface

ประเภทข้อมูลใน Java

ในบทช่วยสอนนี้เราจะเรียนรู้โดยละเอียดเกี่ยวกับประเภทข้อมูลดั้งเดิม Non Primitive Data types of เชือก และ แถว จะครอบคลุมในแบบฝึกหัดแยกต่างหาก

Java Primitive Data types  

Primitive Data types ใน Java มี 8 ประเภทที่แตกต่างกันซึ่งระบุประเภทและค่าของตัวแปร

ประเภทข้อมูลขนาดรายละเอียดค่าเริ่มต้น
ไบต์1 ไบต์เก็บตัวเลขทั้งหมดตั้งแต่ -128 ถึง 1270 (ศูนย์)
Short ไบต์ 2จัดเก็บจำนวนเต็มตั้งแต่ -32768 ถึง 327670 (ศูนย์)
intไบต์ 4เก็บตัวเลขทั้งหมดตั้งแต่ -2,147,483,648 ถึง 2,147,483,6470 (ศูนย์)
ยาวไบต์ 8เก็บตัวเลขทั้งหมดตั้งแต่ -9,223,372,036,854,775,808 ถึง 9,223,372,036,854,775,8070L
ลอยไบต์ 4จัดเก็บตัวเลขเศษส่วนได้ถึงทศนิยม 6-7 หลัก0.0f
สองไบต์ 8จัดเก็บตัวเลขเศษส่วนที่มีทศนิยมสูงสุด 15 หลัก0.0d
ถังไบต์ 2เก็บอักขระ / ตัวอักษรเดี่ยว"\ u0000"
บูลบิต 1เก็บจริงหรือเท็จเท็จ
ดูสิ่งนี้ด้วย
แพ็คเกจใน Java

ประเภทข้อมูลไบต์

ชนิดข้อมูลไบต์ใน Java เก็บจำนวนเต็มระหว่างช่วง -128 ไป 127. ประเภทข้อมูลนี้ส่วนใหญ่จะใช้เพื่อบันทึกหน่วยความจำเนื่องจากมีขนาดเล็กกว่า int 4 เท่าและเมื่อเรารู้ว่าจำนวนเต็มอยู่ภายในขีด จำกัด นี้

public class DataTypeDemo {

  public static void main(String[] args) {
    byte b = 100;
    System.out.println(b);
    
  }
}
100

หากเราเตรียมใช้งานตัวแปรไบต์ที่มีค่าเกินขีด จำกัด ที่กำหนดไว้มันจะทำให้เกิดข้อผิดพลาดในการคอมไพล์

public class DataTypeDemo {

  public static void main(String[] args) {
    byte b = 130;
    System.out.println(b);
    
  }
}
Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
  Type mismatch: cannot convert from int to byte

  at DataTypeDemo.main(DataTypeDemo.java:5)

ประเภทข้อมูลสั้น ๆ

ชนิดข้อมูลแบบสั้นมีขนาดมากกว่าไบต์ แต่น้อยกว่าจำนวนเต็ม สามารถเก็บค่าระหว่าง -32768 ถึง 32767 ชนิดข้อมูลใน Java ยังช่วยประหยัดหน่วยความจำเมื่อเทียบกับจำนวนเต็ม นอกจากนี้ยังแสดงข้อผิดพลาด“ ประเภทไม่ตรงกัน” หากเราเริ่มต้นค่าเกินขีด จำกัด

public class DataTypeDemo {

  public static void main(String[] args) {
    short s = 10000;
    System.out.println(s);
    
  }
}
10000

ประเภทข้อมูล Int

Int เป็นชนิดข้อมูลที่ใช้บ่อยที่สุดใน Java เพื่อเก็บตัวเลขทั้งหมด สามารถจัดเก็บค่าในช่วงของ -2,147,483,648 ถึง 2,147,483,647นี่คืออะไร แต่ -2 ^ 31 ถึง 2 ^ 31 - 1

public class DataTypeDemo {

  public static void main(String[] args) {
    int i = 50000;
    System.out.println(i);
    
  }
}
50000

ประเภทข้อมูลแบบยาว

เราใช้ชนิดข้อมูลแบบยาวใน Java เมื่อเราต้องการเก็บค่าที่มากกว่าขีด จำกัด จำนวนเต็ม มีความจุระหว่าง -9,223,372,036,854,775,808 ไป 9,223,372,036,854,775,807 ซึ่งอยู่ในช่วงของ -2 ^ 63 ถึง 2 ^ 63 - 1. นี้ไม่ได้ใช้บ่อยมาก

public class DataTypeDemo {

  public static void main(String[] args) {
    long l = 1023435235235235L;
    System.out.println(l);
    
  }
}
1023435235235235

ประเภทข้อมูลลอย

เราใช้ประเภทข้อมูล Float ใน Java เพื่อจัดเก็บไฟล์ เป็นเศษส่วน ค่าซึ่งเป็นค่าความแม่นยำเดียว บิต 32 จุดลอยตัว IEEE754 ประเภทข้อมูลนี้มีขนาดเล็กกว่าสองเท่า แต่เราไม่สามารถใช้ข้อมูลนี้เพื่อเก็บค่าเศษส่วนได้อย่างแม่นยำ

public class DataTypeDemo {

  public static void main(String[] args) {
    float f = 4.5678f;
    System.out.println(f);
    
  }
}
4.5678

ประเภทข้อมูลคู่

ประเภทข้อมูลคู่ใน Java ยังมีไฟล์ เป็นเศษส่วน คุ้มค่า แต่มีความแม่นยำสองเท่า บิต 64 จุดลอยตัว IEEE 754 เราสามารถใช้สิ่งนี้สำหรับค่าทศนิยมที่คล้ายกับลอย

public class DataTypeDemo {

  public static void main(String[] args) {
    Double d = 56.567891234d;
    System.out.println(d);
    
  }
}
56.567891234

ประเภทข้อมูล Char

เราใช้ชนิดข้อมูล char ใน Java เพื่อจัดเก็บไฟล์ ตัวอักษร หรือจดหมาย หมายถึงก Unicode 16 บิต ช่วงอักขระและค่าระหว่าง 0 ('\ u0000') ถึง 65535 ('\ uffff')

public class DataTypeDemo {

  public static void main(String[] args) {
    char c ='j';
    System.out.println(c);
    
  }
}
j

ชนิดข้อมูลบูลีน

นี่เป็นประเภทข้อมูลที่ใช้บ่อยที่สุดใน java ซึ่งเก็บค่าต่างๆเช่น จริง or เท็จ. เราใช้สิ่งนี้เป็นแฟล็กเพื่อวัตถุประสงค์ตามเงื่อนไข

public class DataTypeDemo {

  public static void main(String[] args) {
    boolean b;
    int a = 4;
    int i = 8;
    if(a>i)
      b = true;
    else
      b = false;
    System.out.println(b);
    
  }
}
false

ประเภทข้อมูลที่ไม่ใช่แบบดั้งเดิม  

Non-Primitive Data types ใน Java ได้แก่ เชือก, Array, Class และ Interface เรายังสามารถเรียกมันว่า ประเภทข้อมูลอ้างอิง. เราจะกล่าวถึงรายละเอียดเกี่ยวกับประเภทข้อมูลที่ไม่ใช่พื้นฐานในบทช่วยสอนที่กำลังจะมาถึง

ดูสิ่งนี้ด้วย
Java ในขณะที่วนซ้ำ

เชือก

A เชือก เป็นประเภทข้อมูลที่ใช้บ่อยที่สุดอีกประเภทหนึ่งซึ่งแสดงถึงอาร์เรย์ของอักขระ ค่าจะอยู่ในเครื่องหมายคำพูดคู่ (”“) เสมอ

String str = "Java Programming";

แถว

An แถว สามารถเก็บค่าข้อมูลประเภทเดียวกันได้หลายค่า เราสามารถใช้อาร์เรย์เพื่อจัดเก็บข้อมูลประเภทใดก็ได้

String[] names = {"Ram","Leela","Tejas"};
int[] num = {3,6,12,89,24};

ชั้น

คลาสใน Java ประกอบด้วยหลาย ๆ วิธีการ และตัวแปร เราจำเป็นต้องสร้างอินสแตนซ์ของคลาสเพื่อใช้งานเราสามารถใช้ออบเจ็กต์เดียวเพื่อเข้าถึงข้อมูลใด ๆ ภายในคลาส ตัวอย่างเช่นเราสร้างอินสแตนซ์หรือวัตถุชื่อ d หากเราต้องการเข้าถึงวิธีการหรือตัวแปรใด ๆ ภายในคลาส

public class DataTypeDemo {

  public static void main(String[] args) {
    DataTypeDemo d = new DataTypeDemo();
    
  }
}

อินเตอร์เฟซ

อินเทอร์เฟซก็เหมือนกับคลาสที่มีฟังก์ชันหรือตัวแปรเท่านั้น แต่ไม่มีการนำไปใช้ การนำฟังก์ชันเหล่านี้ไปใช้งานจะอยู่ที่อื่น กล่าวอีกนัยหนึ่งก็คือบอกว่าชั้นเรียนทำอะไรและไม่ทำอย่างไร

//interface
interface StudentDetails {
  public void getStudentName();
  public void getStudentDepartment();
}

//implementation of the methods
public class Student implements StudentDetails {
  
  @Override
  public void getStudentName() {
    
  }

  @Override
  public void getStudentDepartment() {
    
  }
}

อ้างอิง