Bài 5. Tìm Hiểu Các Kiểu Dữ Liệu Trong Java | Tự Học Java Căn Bản

Published on
Thuộc danh mục: Học Java Căn Bản|Đăng bởi: Lê Thanh Giang||6 min read
Facebook share iconLinkedIn share iconTwitter share iconPinterest share iconTumblr share icon
Bài 5. Các Kiểu Dữ Liệu Trong Java | Tự Học Java Căn Bản

Trong Java, các kiểu dữ liệu (data types) đóng vai trò quan trọng trong việc khai báo và xác định loại giá trị mà một biến có thể lưu trữ. Việc hiểu rõ các kiểu dữ liệu trong Java giúp bạn viết mã hiệu quả hơn, đồng thời tối ưu hóa bộ nhớ và tăng cường hiệu suất chương trình. Java chia các kiểu dữ liệu thành hai nhóm chính: Kiểu dữ liệu nguyên thủy (primitive types) và Kiểu dữ liệu tham chiếu (reference types).

Kiểu Dữ Liệu Nguyên Thủy (Primitive Data Types)

Kiểu dữ liệu nguyên thủy trong Java là các kiểu cơ bản nhất mà ngôn ngữ này cung cấp. Các kiểu dữ liệu này được sử dụng để lưu trữ các giá trị như số, ký tự, v.v. Java cung cấp 8 kiểu dữ liệu nguyên thủy, mỗi kiểu có một kích thước cố định và một phạm vi giá trị cụ thể.

Dưới đây là bảng tổng hợp các kiểu dữ liệu nguyên thủy trong Java:

Kiểu Dữ LiệuKích ThướcPhạm Vi Giá Trị
byte1 byte-128 đến 127
short2 byte-32,768 đến 32,767
int4 byte-2,147,483,648 đến 2,147,483,647
long8 byte-9,223,372,036,854,775,808 đến 9,223,372,036,854,775,807
float4 byte3.4e−038 đến 3.4e+038
double8 byte1.7e−308 đến 1.7e+308
char2 byte0 đến 65,535 (lưu trữ ký tự Unicode)
boolean1 bittrue hoặc false

Đặc điểm của kiểu dữ liệu nguyên thủy:

  • Kích thước cố định: Kích thước của các kiểu dữ liệu này không thay đổi, bất kể môi trường thực thi.
  • Hiệu suất cao: Vì chúng được lưu trữ trực tiếp trong bộ nhớ và không cần sự quản lý phức tạp.

Ví dụ, khai báo một số biến với các kiểu dữ liệu nguyên thủy trong Java:

int number = 100;
float pi = 3.14f;
char grade = 'A';
boolean isValid = true;

Kiểu Dữ Liệu Tham Chiếu (Reference Data Types)

Khác với kiểu dữ liệu nguyên thủy, kiểu dữ liệu tham chiếu trong Java không lưu trữ giá trị trực tiếp mà lưu trữ một địa chỉ tham chiếu đến đối tượng trong bộ nhớ (Đối tượng thực sự được lưu trữ trong heap memory - bộ nhớ heap).

Các kiểu dữ liệu tham chiếu này có thể lưu trữ nhiều giá trị cùng một lúc và có thể thay đổi kích thước tùy thuộc vào dữ liệu được lưu trữ.

Các kiểu dữ liệu tham chiếu trong Java bao gồm:

  • Chuỗi (String): Lưu trữ dãy ký tự.

    String name = "John Doe";
    
  • Mảng (Array): Lưu trữ tập hợp các giá trị có cùng kiểu dữ liệu.

    int[] numbers = {1, 2, 3, 4, 5};
    
  • Lớp (Class): Dùng để định nghĩa các đối tượng. Lớp là một kiểu dữ liệu tham chiếu cơ bản trong Java, và tất cả các đối tượng trong Java đều được tạo ra từ lớp.

    class Person {
        String name;
        int age;
    }
    
  • Giao diện (Interface): Lưu trữ các phương thức mà lớp phải thực hiện.

    interface Animal {
        void sound();
    }
    
  • Kiểu đối tượng (Object): Tất cả các lớp trong Java đều kế thừa từ lớp Object. Mỗi đối tượng là một thể hiện của lớp.

Đặc điểm của kiểu dữ liệu tham chiếu:

  • Không lưu trữ giá trị trực tiếp: Kiểu dữ liệu tham chiếu lưu trữ địa chỉ của đối tượng trong bộ nhớ.
  • Không có kích thước cố định: Kích thước của các đối tượng tham chiếu phụ thuộc vào loại đối tượng và số lượng các thành phần bên trong.

Ví dụ về khai báo một đối tượng với kiểu dữ liệu tham chiếu:

Person person = new Person();
person.name = "Alice";
person.age = 25;

So Sánh Kiểu Dữ Liệu Nguyên Thủy và Kiểu Dữ Liệu Tham Chiếu

Đặc ĐiểmKiểu Dữ Liệu Nguyên ThủyKiểu Dữ Liệu Tham Chiếu
Lưu trữ giá trịLưu trữ giá trị trực tiếpLưu trữ địa chỉ bộ nhớ của đối tượng
Kích thướcCố địnhThay đổi tùy theo đối tượng
Hiệu suấtCaoThấp hơn vì phải quản lý bộ nhớ động
Ví dụint, char, booleanString, Array, Object

Kiểu Dữ Liệu var (Từ Java 10 trở đi)

Java 10 giới thiệu kiểu dữ liệu var, cho phép bạn khai báo biến mà không cần chỉ định kiểu dữ liệu rõ ràng. Khi sử dụng var, Java sẽ tự động suy luận kiểu dữ liệu dựa trên giá trị bạn gán cho biến.

Điều này giúp mã nguồn trở nên ngắn gọn và dễ đọc hơn, đặc biệt là khi làm việc với các kiểu dữ liệu phức tạp hoặc khi bạn không cần quan tâm đến kiểu dữ liệu cụ thể. Tuy nhiên, cần lưu ý rằng kiểu var chỉ có thể được sử dụng khi biến đã được khởi tạo ngay lập tức với một giá trị.

Ví dụ:

var number = 10;   // Java sẽ hiểu number là kiểu int
var name = "Java"; // Java sẽ hiểu name là kiểu String

Tuy var giúp giảm bớt việc khai báo kiểu dữ liệu, nhưng bạn vẫn cần phải đảm bảo rằng giá trị được gán có thể rõ ràng suy luận kiểu của nó. Nếu không, bạn sẽ gặp lỗi biên dịch.

Lưu ý: var chỉ có thể được sử dụng với biến cục bộ trong phương thức, không thể sử dụng cho biến toàn cục hoặc biến trong lớp.

Tóm Tắt

  • Kiểu dữ liệu nguyên thủy trong Java là các kiểu cơ bản, được sử dụng để lưu trữ giá trị đơn giản như số nguyên, số thực, ký tự, và giá trị boolean. Chúng có kích thước cố định và hiệu suất cao.
  • Kiểu dữ liệu tham chiếu được sử dụng để lưu trữ các đối tượng và mảng. Chúng lưu trữ địa chỉ của đối tượng thay vì giá trị thực tế và không có kích thước cố định.

Việc hiểu rõ các kiểu dữ liệu trong Java giúp bạn có thể lựa chọn đúng kiểu cho mỗi tình huống, tối ưu hóa bộ nhớ và viết mã hiệu quả hơn.

Bài tiếp theo: Bài 6. Hằng số trong Java

Bài viết mới nhất

Bài viết liên quan

Newsletter border

Đăng ký để nhận tin từ RiverLee