Các loại dữ liệu nguyên thủy trong Java (primitives variable)

Các loại dữ liệu nguyên thủy trong Java (primitives variable)

(Xem thêm: Phân biệt dữ liệu nguyên thủy với tham chiếu)

Dữ liệu nguyên thủy là gì?

  • Dữ liệu nguyên thủy (Primitive types) là kiểu dữ liệu cơ bản nhất của ngôn ngữ Java.
  • Dữ liệu nguyên thủy gồm 8 loại: booleanbytecharshortintlongfloat vàdouble
  • Dữ liệu nguyên thủy được chia làm 3 loại:
    • Dữ liệu kiểu số (Numeric primitives): shortintlongfloat và double. Những kiểu dữ liệu sẽ lưu trữ dữ liệu kiểu số. Các phép tính với kiểu dữ liệu này bao gồm tính toán toán học (cộng, trừ, nhân chia…), so sánh (nhỏ hơn, lớn hơn, bằng…)
    • Dữ liệu kiểu văn bản (Textual primitives): byte và char. Các dữ liệu loại này thực hiện lưu trữ các ký tự (các chữ cái hoặc chữ số). Các phép tính với dữ liệu kiểu này gồm các xử lý văn bản (so sánh hai từ, nối các ký tự…)
    • Dữ liệu kiểu boolean hoặc kiểu null:boolean and null.
  • Tất cả các kiểu dữ liệu nguyên thủy đều có kích thước cố định. Do vậy, giá trị của các dữ liệu nguyên thủy bị giới hạn trong một khoảng.
Category Loại Size (bits) Minimum Value Maximum Value Các giá trị có thể nhận Ví dụ
Integer

(Kiểu số nguyên)

byte 8 -128 127 -128 tới 127 byte b = 65;
char 16 0 216-1 Tất cả các ký tự Unicode char c = ‘A’;
char c = 65;
short 16 -215 215-1 -32,768 tới 32,767 short s = 65;
int 32 -231 231-1 -2,147,483,648 tới 2,147,483,647 int i = 65;
long 64 -263 263-1 -9,223,372,036,854,775,808 tới 9,223,372,036,854,775,807 long l = 65L;
Floating-point

(Kiểu số thực)

float 32 2-149 (2-2-23)·2127 1.4 E-45 tới 3.402,823,5 E+38 float f = 65f;
double 64 2-1074 (2-2-52)·21023 4.9 E-324 tới 1.797,693,134,862,315,7 E+308 double d = 65.55;
Other boolean false, true boolean b = true;

* Lưu ý:

  • Kích thước của kiểu boolean không thể xác định được 1 cách rõ ràng.
  • Kiểu bytechar ở trên mình để là mục kiểu văn bản nhưng ở dưới lại để vào mục kiểu số nguyên là vì mỗi ký tự sẽ tương ứng với 1 số trong bảng mã ASCII, UNICODE.

 

Okay,Done!

References:

https://docs.oracle.com/…/datatypes.html

stackjava.com