Ngôn Ngữ Lập Trình Java
Chương này cho chúng ta thấy một cái nhìn tổng quát về ngôn ngữ lập trình Java ở mức độ tóm lược. Như chúng ta đã biết mọi ngôn ngữ lập trình đều cung cấp cho chúng ta cách sử dụng biến, cung cấp các kiểu dữ liệu cơ sở và các cấu trúc cơ bản như cấu trúc lặp, điều kiện,… Java cũng không ngoại lệ, do đó ở chương 3 này cung cấp cho chúng ta các khái niệm sau:
·Biến số: cách khai báo
·Kiểu dữ liệu: chuyển kiểu, hằng kí tự
·Toán tử trong Java
·Cấu trúc điều kiện
·Cấu trúc mảng
·Cấu trúc lặp
Giới thiệu về biến số
Như mọi ngôn ngữ lập trình khác, biến là một vùng nhớ được sử dụng để lưu trữ dữ liệu tạm thời trong lúc chạy chương trình. Java hỗ trợ cách khai báo biến như trong ngôn ngữ C.
Khai báo biến trong ngôn ngữ Java
int x; //khai bao bien x la kieu so nguyen
int y; //khai bao bien y la kieu so nguyen
x = 10; //gan gia tri bang 10 cho bien x
int z = 20 //khai bao bien nguyen z va gan gia tri cho no la 20
Kiểu dữ liệu
Java cung cấp 2 kiểu dữ liệu:
Kiểu dữ liệu cơ sở - Primitive type
Kiểu dữ liệu có tham chiếu – Reference types
Reference types bao gồm các kiểu sau:
Mảng (array)
Lớp (class)
Giao diện (interface)
Primitive type là kiểu dữ liệu đã được xác định trong ngôn ngữ bao gồm các nhóm sau: int (số nguyên), float (số thực dấu chấm động), character (kí tự) và boolean (chứa 2 giá trị true, false)
Kiểu | Kích thước | Giá trị nhỏ nhất | Giá trị lớn nhất |
byte | 8 bits | -256 | 255 |
short | 16 bits | -32,768 | 32,767 |
int | 32 bits | -2,147,483,648 | 2,147,483,647 |
long | 64 bits | -9,223,372,036,854,775,808 | 9,223,372,036,854,775,807 |
Khai báo biến trong Java
Ví dụ:
int x;
float y;
short z;
Chuyển kiểu
Có 2 loại chuyển kiểu
·Chuyển kiểu hẹp: chuyển từ kiểu dữ liệu có phạm vi rộng sang kiểu dữ liệu có phạm vi hẹp hơn (long à int), cách chuyển kiểu này thường làm mất thông tin về độ rộng cũng như độ chính xác của biến
·Chuyển kiểu rộng: chuyển từ kiểu dữ liệu có phạm vi hẹp sang kiểu dữ liệu có phạm vi rộng hơn (int à long), có độ an toàn cao hơn loại trên
Từ | Chuyển thành |
byte | short, int, long, float, double |
short | int, long, float, double |
char | int, long, float, double |
Int | long, float, double |
long | float, double |
float | double |
Các hằng kí tự đặc biệt
Chuỗi | Ý nghĩa |
\b | Xóa lùi |
\t | Tab ngang |
\n | Xuống hàng |
\f | Đẩy trang |
\r | Dấu enter |
\” | Nháy kép |
\’ | Nháy đơn |
\\ | Số ngược |
\uxxx | Kí tự unicode |
Toán tử trong Java
Java chia các toán tử thành 2 loại:
Toán tử 1 ngôi: chỉ cần 1 toán hạng, tạo ra sự thay đổi giá trị trực tiếp trên toán hạng đó (VD: a++)
Toánt tử 2 ngôi: cần 2 toán hạng, tạo ra sự thay đổi giá trị từ 2 toán hạng đó (VD: a+b, a-b)
Toán tử | Phép toán | Ví dụ | Giải thích |
= | Phép gán | a = 10 | Gán cho a giá trị 10 |
== | So sánh bằng | a == b | So sánh a == b không, kết quả trả về True nếu bằng, ngược lại False |
!= | Không bằng | a != b | Tương tử “==” nhưng trả về True nếu không bằng, ngược lại False |
&& | AND | a && b | |
?: | Chuỗi điều kiện | a ? exp1 : exp2 | Nếu a đúng thì làm exp1, ngược lại làm exp2 |
|| | OR | a || b | |
< | Bé hơn | a <> | |
<= | Bé hơn hoặc bằng | a <= b | |
> | Lớn hơn | a > b | |
>= | Lớn hơn hoặc bằng | a >= b | |
+ | Cộng | a + b | |
- | Trừ | a - b | |
* | Nhân | a * b | |
/ | Chia | a / b | |
% | Lấy phần dư | a % b | VD: 10 % 3 = 1 |
<< | Dịch trái bit | a <<> | |
>> | Dịch phải bit | a >> b | |
>>> | Dịch phải bit, điền vào bit trống giá trị 0 | a >>> b | |
& | AND trên bit | a & b | 4 & 2 = 1 (4=100, 2 = 010) |
| | OR trên bit | a | b | 4 | 2 = 7 |
^ | XOR trên bit | a ^ b | 4 ^ 2 = 6 |
+= | | a += 3 | a = a + 3 |
-= | | a -= 3 | a = a - 3 |
*= | | a *= 3 | a = a * 3 |
/= | | a /= 3 | a = a / 3 |
&= | | a &= b | a = (a & b) |
|= | | a |= b | a = (a | b) |
^= | | a ^= b | a = (a ^ b) |
%= | | a %= b | a = (a % b) |
<<= | | a <<= b | a = (a <<> |
>>= | | a >>= b | a = (a >> b) |
>>>= | | a >>>= b | a = (a >>> b) |
If (<điều kiện 1>)
else If (<điều kiện 2>)
Else
Lưu ý: nếu khối lệnh gồm nhiều lệnh cần đặt trong cặp dấu {}
Ví dụ:
int a = 10;
int b = 20;
if (a>b)
System.out.print("A > B");
else
System.out.print("A <>);
Ví dụ:
int a = 10;
int b = 20;
if (a>b){
System.out.println(a);
System.out.println(b);
System.out.print("A > B");
}else{
System.out.println(a);
System.out.println(b);
System.out.print("A <>);
}
Cấu trúc switch…
Switch
Case
break;
Case
break;
default :
}
Ví dụ:
int a = 8;
switch (a){
case 2:
System.out.println("Thu hai");
break;
case 3:
System.out.println("Thu ba");
break;
case 4:
System.out.println("Thu tu");
break;
case 5:
System.out.println("Thu nam");
break;
case 6:
System.out.println("Thu sau");
break;
case 7:
System.out.println("Thu bay");
break;
case 8:
System.out.println("
break;
}
Cấu trúc lặp
Cấu trúc for:
for (int i=0; i<10;>
System.out.println(i);
Cấu trúc while:
int i = 0;
while (i<10){
System.out.println(i);
i++;
}
Cấu trúc do…while:
int i = 0;
do{
System.out.println(i);
i++;
}while (i<10);
Khai báo mảng:
Cặp ngoặc vuông đặt sau tên biến
Cặp ngoặc vuông đặt sau kiểu dữ liệu
Ví dụ:
int [] arr;
int arr[];
Cấp phát array
Sau khi khai báo, array cần được cấp phát vùng nhớ. Đặc biệt trong Java, kích thước của mảng không được xác định ngay khi khai báo mà cần dùng từ khóa new
int arr[10]; //trinh bien dich se bao loi
int arr[] = new int[100]; //khai bao va cap phat
int arr[]; //khai bao truoc
arr = new int[100]; //sau do cap phat
Khỏi tạo giá trị ban đầu cho array
int arr[] = {1,2,3,5,4,6};
char arr[] = {‘a’, ‘b’, ‘c’}
String arr[] = {“phung”, “khac”, “huy”}
Truy cập các phần tử trong array
Các phần tử array trong Java được đánh số từ 0, phần tử cuối cùng một mảng gồm n phần tử sẽ có số thứ tự là n-1. Để truy cập một phần tử của mảng ta viết theo dạng sau:
ten_mang[index]
lưu ý: trong các ngôn ngữ khác như C xem chuỗi kí tự là một mảng kí tự nhưng trong Java điều này không đúng nữa, Java xem String là một lớp riêng biệt và được cung cấp sẵn các phương thức cho phép cắt ghép chuỗi, tìm kiếm,….
0 nhận xét:
Đăng nhận xét