Biến là gì?
Một biến có thể được coi là một thùng chứa giá trị cho bạn, trong suốt vòng đời của một chương trình Java. Mỗi biến được gán một kiểu dữ liệu chỉ định loại và số lượng giá trị mà nó có thể giữ.
Để sử dụng một biến trong chương trình, bạn cần thực hiện 2 bước
- Sự định nghĩa biến
- Biến khởi tạo
Trong hướng dẫn này, bạn sẽ học-
- Sự định nghĩa biến
- Biến khởi tạo
- Các loại biến
- Các kiểu dữ liệu trong Java
- Chuyển đổi loại & Đúc kiểu
Sự định nghĩa biến:
Để khai báo một biến, bạn phải chỉ định kiểu dữ liệu và đặt tên cho biến đó.
Ví dụ về các khai báo biến
int a,b,c;
float pi;
double d;
char a;
Khởi tạo biến
Để khởi tạo một biến, bạn phải gán cho nó một giá trị hợp lệ.
Ví dụ về các Khởi tạo hợp lệ khác là
pi =3.14f;
do =20.22d;
a=’v’;
Bạn có thể kết hợp khai báo biến và khởi tạo.
Thí dụ :
int a=2,b=4,c=6;
float pi=3.14f;
double do=20.22d;
char a=’v’;
Các loại biến
Trong Java, có ba loại biến:
- Biến cục bộ (Local Variables)
- Biến sơ (Instance Variables)
- Biến tĩnh (Static Variables)
1) Biến cục bộ - Local Variables
Các biến cục bộ là một biến được khai báo bên trong phần thân của một phương thức.
2) Biến sơ thẩm - Instance Variables
Các biến sơ thẩm được định nghĩa mà không có từ khóa STATIC. Chúng được định nghĩa Bên ngoài một khai báo phương thức. Chúng là đối tượng cụ thể và được gọi là các biến thể hiện.
3) Biến tĩnh - Static Variables
Các biến tĩnh chỉ được khởi tạo một lần, khi bắt đầu thực hiện chương trình. Các biến này nên được khởi tạo trước, trước khi khởi tạo bất kỳ biến thể hiện nào.
Ví dụ: Các loại biến trong Java
class CodeLean {
int data = 109; //instance variable
static int a = 1; //static variable
void method() {
int b = 90; //local variable
}
}
Các kiểu dữ liệu trong Java
Các kiểu dữ liệu phân loại các giá trị khác nhau sẽ được lưu trữ trong biến. Trong java, có hai loại kiểu dữ liệu:
- Kiểu dữ liệu nguyên thủy
- Kiểu dữ liệu không nguyên thủy
Kiểu dữ liệu nguyên thủy
Các kiểu dữ liệu nguyên thủy được xác định trước và có sẵn trong ngôn ngữ Java. Các giá trị nguyên thủy không chia sẻ trạng thái với các giá trị nguyên thủy khác.
Có 8 kiểu nguyên thủy: kiểu dữ liệu Integer byte, short, int, long, char, float, double và boolean
byte (1 byte)
short (2 bytes)
int (4 bytes)
long (8 bytes)
Kiểu dữ liệu nổi
float (4 byte)
double (8 byte)
Kiểu dữ liệu văn bản
char (2 byte)
Luận lý
boolean (1 byte) (true/false)
Các kiểu dữ liệu Trong Java
Data Type | Default Value | Default size |
byte | 0 | 1 byte |
short | 0 | 2 bytes |
int | 0 | 4 bytes |
long | 0L | 8 bytes |
float | 0.0f | 4 bytes |
double | 0.0d | 8 bytes |
boolean | false | 1 bit |
char | '\u0000' | 2 bytes |
Những điểm cần nhớ:
- Tất cả các loại dữ liệu số được ký (+/-).
- Kích thước của các loại dữ liệu vẫn giống nhau trên tất cả các nền tảng (được chuẩn hóa)
- Kiểu dữ liệu char trong Java là 2 byte vì nó sử dụng bộ ký tự UNICODE . Nhờ có nó, Java hỗ trợ quốc tế hóa. UNICODE là một bộ ký tự bao gồm tất cả các chữ viết và ngôn ngữ đã biết trên thế giới
Chuyển đổi kiểu & biến đổi kiểu Java
Một biến của một loại có thể nhận giá trị của loại khác. Ở đây có 2 trường hợp -
Trường hợp 1) Biến công suất nhỏ hơn được gán cho biến khác có công suất lớn hơn.
Quá trình này là Tự động và không rõ ràng được gọi là Chuyển đổi
Trường hợp 2) Biến công suất lớn hơn được gán cho biến khác có công suất nhỏ hơn
Trong các trường hợp như vậy, bạn phải xác định rõ ràng toán tử cast kiểu. Quá trình này được gọi là Ép kiểu.
Trong trường hợp, bạn không chỉ định một toán tử cast kiểu; trình biên dịch đưa ra một lỗi. Vì quy tắc này được thực thi bởi trình biên dịch, nó làm cho lập trình viên nhận ra rằng việc chuyển đổi mà anh ta sắp thực hiện có thể gây ra một số mất mát trong dữ liệu và ngăn ngừa tổn thất do tai nạn.
Ví dụ: Để hiểu ép kiểu
Bước 1) Sao chép mã sau vào trình chỉnh sửa.
class Demo {
public static void main(String args[]) {
byte x;
int a = 270;
double b = 128.128;
System.out.println("int converted to byte");
x = (byte) a;
System.out.println("a and x " + a + " " + x);
System.out.println("double converted to int");
a = (int) b;
System.out.println("b and a " + b + " " + a);
System.out.println("\ndouble converted to byte");
x = (byte)b;
System.out.println("b and x " + b + " " + x);
}
}
Bước 2) Lưu, biên dịch và chạy mã.
Đầu ra:
int converted to byte
a and x 270 14
double converted to int
b and a 128.128 128
double converted to byte
b and x 128.128 -128
Đăng nhận xét