Khởi tạo biến trong Java | Laptrinhcanban.com

HOME › >>

Khởi tạo biến trong Java

Để sử dụng biến trong Java, chúng ta cần phải khai báo biến và sau đó gán giá trị vào biến đó. Tuy nhiên chúng ta cũng có thể thực hiện đồng thời việc khai báo và gán giá trị ban đầu trong biến chỉ trong một xử lý, và chúng ta gọi đó là khởi tạo biến trong Java. Trong bài này chúng ta sẽ cùng tìm hiểu về cách khởi tạo biến, vị trí khởi tạo biến trong chương trình, cũng như sự khác nhau giữa khởi tạo và khai báo biến trong Java nhé.

Khởi tạo biến trong Java

Khởi tạo biến trong Java là xử lý khai báo biến đồng thời với việc gán giá trị ban đầu cho biến đó. Để khởi tạo biến trong Java, chúng ta viết kiểu dữ liệu, tên biến cũng như là giá trị ban đầu của biến đó như sau:

type name = value;

Trong đó

  • type là kiểu dữ liệu của biến, có thể là int, char, float hoặc String mà bạn đã học trong bài Kiểu dữ liệu trong Java
  • name là tên biến được đặt theo Quy tắc đặt tên biến trong Java mà bạn đã học trong bài Biến trong Java là gì.
  • value là giá trị của biến. Lưu ý là giá trị này không nhất thiết phải thuộc kiểu dữ liệu tupe được chỉ định, nhưng chúng ta nên sử dụng giá trị thuộc kiểu dữ liệu tupe.

Trong các trường hợp mà chúng ta đã biết trước giá trị cần gán vào biến, thì chúng ta nên khởi tạo nó khi khai báo biến càng sớm càng tốt. Nếu bạn vô tình cố gắng lấy một giá trị từ biến trước khi nó được khởi tạo giá trị đầu tiên, bạn sẽ không biết mình sẽ lấy phải giá trị nào từ biến đó, và rất dễ xảy ra lỗi trong chương trình. Việc khởi tạo giá trị đầu tiên cho biến khi đã biết giá trị của nó sẽ giúp chúng ta phòng tránh những lỗi trong chương trình từ trong trứng nước.

Ví dụ, chúng ta khởi tạo các biến thuộc các kiểu dữ liệu khác nhau trong Java như sau:

//Biến thuộc kiểu số nguyên
int num1 = 1;

//Biến thuộc kiểu số thực
float num2 = 10.2;

//Biến thuộc kiểu ký tự
char a = 'a';

//Biến thuộc kiểu chuỗi ký tự
String str = "Vietnam";

Lưu ý là khi khởi tạo biến trong Java thì chúng ta chỉ có thể gán một giá trị vào một biến có kiểu giống nó mà thôi.

Ví dụ, chúng ta không thể gán một số vào một biến String vì lỗi sẽ xảy ra như sau:

String str = 1;

Lỗi compile trả về:

Main.java:4: error: incompatible types: int cannot be converted to String
String str = 1;
^

Khởi tạo đồng loạt biến trong Java

Để khởi tạo biến trong Java chúng ta sẽ ghi kiểu dữ liệu, tên cũng như là giá trị của biến. Tuy nhiên trong trường hợp nhiều biến có cùng một kiểu dữ liệu, thì chúng ta có thể khởi tạo chúng cùng lúc với cú pháp sau đây:

Cú pháp

Cú pháp chúng ta sử dụng để khởi tạo đồng loạt các biến có cùng kiểu trong Java như sau:

type name1 = value1, name2 = value2, name3 = value;

Chúng ta viết kiểu biến lên đầu, sau đó ghi tên các cặp biến-giá trị cách nhau bởi một dấu phẩy như trên

Ví dụ cụ thể, chúng ta khởi tạo 3 biến thuộc kiểu int có cùng giá trị như sau:

int x=10, y=20, z = 30;

Lưu ý cách viết sai khi khởi tạo đồng loạt các biến có cùng kiểu và cùng giá trị trong Java

Trong trường hợp khởi tạo nhiều biến có cùng kiểu dữ liệu lẫn giá trị ban đầu, các bạn lưu ý cách viết sau đây là sai:

int x,y,z = 10;

Với cách viết này, thực chất chỉ có biến z là được khởi tạo giá trị ban đầu bằng 10, trong khi 2 biến x và y thì lại không được gán giá trị này.

Lúc này, chúng ta vẫn có thể in giá trị của z ra màn hình:

public class Main
{
public static void main(String[] args) {
int x, y, z = 30;
System.out.println( z);
}
}
//10

Tuy nhiên nếu bạn in giá trị của x hoặc y ra màn hình, do chưa có giá trị nào được gán vào chúng cả, nên lỗi compile sẽ xảy ra:

public class Main
{
public static void main(String[] args) {
int x, y, z = 30;
System.out.println( x);
System.out.println( y);
System.out.println( z);
}
}

Nội dung lỗi:

Main.java:5: error: variable x might not have been initialized
System.out.println( x);
^
Main.java:6: error: variable y might not have been initialized
System.out.println( y);
^

Bởi vậy, chúng ta cần phải viết lại bằng một trong 2 cách khởi tạo sau đây:

int x = 10, y=10, z = 10;

Hoặc là:

int x = 10;
int y = 10;
int z = 10;

Vị trí khởi tạo biến trong Java

Cũng tương tự như khi khai báo biến thì do trong chương trình Java, nếu một biến chưa được khởi tạo mà đem ra sử dụng thì sẽ bị xảy ra lỗi, nên vị trí khởi tạo biến trong chương trình Java cũng sẽ là ở phía trên xử lý dùng tới biến đó.

Tuy nhiên để dễ quản lý code thì thông thường thì chúng ta sẽ khởi tạo toàn bộ các biến sử dụng trong chương trình ở phần đầu mã nguồn như sau:

public class Main
{
public static void main(String[] args) {
int width = 100, height = 80;

System.out.println("width = "+ width);
System.out.println("height = "+ height);
}
}

Sự khác biệt giữa khởi tạo và khai báo biến trong Java

Cả khởi tạo và khai báo biến đều có tác dụng tạo ra một biến để sử dụng trong chương trình Java.

Vậy sự khác biệt giữa khởi tạo và khai báo biến trong Java là như thế nào? Câu trả lời là:

  1. Khai báo biến là để giới thiệu cho chương trình biến một biến sẽ sử dụng có tên thế nào và kiểu dữ liệu ra sao. Tuy nhiên trong khai báo biến sẽ không bao gồm việc gán giá trị đầu tiên cho biến đó.

  2. Khởi tạo biến ngoài việc giới thiệu cho chương trình biến một biến sẽ sử dụng có tên thế nào và kiểu dữ liệu ra sao, thì còn bao gồm luôn cả việc gán giá trị đầu tiên cho biến đó.

Vậy khi nào thì nên dùng khai báo biến, và khi nào thì nên dùng khởi tạo biến trong Java? Câu trả lời phụ thuộc vào việc chúng ta đã biết giá trị đầu tiên gán vào biến đó hay chưa. Nếu đã biết giá trị gán vào biến, hãy dùng khởi tạo biến. Nếu chưa, hãy dùng khai báo biến trong Java.

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn cách khởi tạo biến trong Java rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về Java trong các bài học tiếp theo.

URL Link

https://laptrinhcanban.com/java/java-co-ban-cho-nguoi-moi-bat-dau/bien-va-kieu-du-lieu-trong-java/khoi-tao-bien-trong-java/

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME  › >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.