Kiểu dữ liệu trong java

Tiếp tục bài viết về các kiểu dữ liệu trong hoc lap trinh java

Kiểu số nguyên

•Bốn kiểu số nguyên khác nhau là: byte, short, int, long
•Kiểu mặc định của các số nguyên là kiểu int
•Không có kiểu số nguyên không dấu
•Không thể chuyển biến kiểu int và kiểu boolean như trong ngôn ngữ C/C++

VD: int x = 0;
long y=100;
int a=1,b,c;
•Kiểu số nguyên:
boolean b = false;
if (b == 0)
{
System.out.println("Xin chao");
}
• Lúc biên dịch, đoạn chương trình trên sẽ báo lỗi vì ta không được so sánh biến kiểu boolean với biến kiểu int.
- Một số lưu ý đối với các phép toán trên số nguyên:
- Nếu hai toán hạng kiểu long thì kết quả là kiểu long.
- Một trong hai toán hạng không phải kiểu long sẽ được chuyển thành kiểu long trước khi thực hiện phép toán.
- Nếu hai toán hạng đầu không phải kiểu long thì phép tính sẽ thực hiện với kiểu int.
- Các toán hạng kiểu byte hay short sẽ được chuyển sang kiểu int trước khi thực hiện phép toán.

Kiểu dấu chấm động: 

•Kiểu float có kích thước 4 byte và giá trị mặc định là 0.0f
•Kiểu double có kích thước 8 byte và giá trị mặc định là 0.0d
•Khai báo và khởi tạo giá trị cho các biến kiểu dấu chấm động:
float x = 100.0/7;
double y = 1.56E6;
Một số lưu ý với các phép toán trên số dấu chấm động:
- Nếu mỗi toán hạng đều có kiểu dấu chấm động thì phép toán chuyển thành phép toán dấu chấm động.
- Nếu có một toán hạng là double thì các toán hạng còn lại sẽ được chuyển thành kiểu double trước khi thực hiện phép toán.
- Biến kiểu float và double có thể ép chuyển sang kiểu dữ liệu khác (trừ kiểu boolean).
•Kiểu ký tự
•Biểu diễn các ký tự trong bộ mã Unicode
•216 = 65536 ký tự khác nhau :
• từ '\u0000' đến '\uFFFF'
•Kiểu luận lý (boolean)
•Hai giá trị: true hoặc false
•Giá trị mặc định: false
•Không thể chuyển thành kiểu nguyên và ngược lại
•Kiểu mảng
•Khai báo: int[] iarray; hoặc int iarray[];
•Cấp phát: iarray = new int[100];
•Khởi tạo:
int[] iarray = {1, 2, 3, 5, 6};
char[] carray = {‘a’, ‘b’, ‘c’};
Chú ý: Luôn khởi tạo hoặc cấp phát mảng trước khi sử dụng
•Một số khai báo không hợp lệ:
int[5] iarray;
int iarray[5];
Kiểu mảng
•Truy cập mảng
•iarray[3] = 0;
•carray[1] = ‘z’;
Chú ý: Chỉ số của mảng được tính từ 0
•Lấy số phần tử mảng:
iarray.length
•Khi gặp phải sự không tương thích kiểu dữ liệu chúng ta phải tiến hành chuyển đổi kiểu dữ liệu cho biến hoặc biểu thức

•Toán tử ép kiểu:

<tên biến> = (kiểu_dữ_liệu) <tên_biến>;

float fNum = 2.2;

int iCount = (int) fNum

•Ép kiểu rộng (widening conversion): từ kiểu nhỏ sang kiểu lớn (không mất mát thông tin)

•Ép kiểu hẹp (narrow conversion): từ kiểu lớn sang kiểu nhỏ (có khả năng mất mát thông tin)

0 nhận xét: