Xem mẫu
- Chương 2
NỘI DUNG
1. Cấu trúc một chương trình Java
2. Dịch và thực thi chương trình Java
3. Hằng, biến, kiểu dữ liệu
4. Toán tử và biểu thức
5. Mảng
6. Chuỗi
7. Nhập xuất dữ liệu
8. Cấu trúc điều khiển
2
1
- 1. Cấu trúc một chương trình Java
chú thích => Trình biên dịch sẽ bỏ
// Tên file : Hello.java qua những dòng có dấu chú thích
/* các chú thích*/ Khai báo các gói được sử
dụng trong chương trình
import java. util.*;
Khai báo lớp, tên lớp chứa
public class Hello hàm main (phải giống tên file)
{//điểm bắt đầu của lớp
public static void main( String args[ ] )
Phương thức main(), điểm bắt đầu của chương trình, được gọi
{ đầu tiên. Mỗi CT thực thi phải có một phương thức main()
System.out.println( “Hello World" );
} Lệnh hiển thị dãy ký tự ra màn hình
} Các câu lệnh phải kết thúc bằng dấu chấm3 phẩy
Cấu trúc một chương trình Java (tt)
• Dòng đầu tiên khai báo nạp các lớp sử
dụng
– Ví dụ trên: import java.util.*
• Chú thích: ngôn ngữ Java hỗ trợ ba kiểu
chú thích sau:
– /* text */
– // text
– /** documentation */ công cụ javadoc trong
bộ JDK sử dụng chú thích này để chuẩn bị
cho việc tự động phát sinh tài liệu.
4
2
- Cấu trúc một chương trình Java (tt)
• Phương thức main(): là điểm bắt đầu thực thi
một ứng dụng, mỗi ứng dụng Java phải chứa
một phương thức main có dạng như sau:
– public static void main(String[] args)
• Dấu mở và đóng ngoặc nhọn “{“ và “}” là bắt
đầu và kết thúc một khối lệnh.
• Dấu chấm phẩy “;” để kết thúc một dòng
lệnh.
• Tất cả các biến, phương thức được khai báo
trong phạm vi một lớp.
5
2. Dịch và thực thi chương trình Java
• Viết mã nguồn: dùng một chương trình
soạn thảo để viết mã nguồn, lưu lại với file
tên có đuôi “.java”. Tên của file phải giống
tên của lớp chính trong chương trình.
• Biên dịch ra mã máy ảo: dùng trình biên
dịch javac để biên dịch mã nguồn “.java”
thành mã của máy ảo (java bytecode) có
đuôi “.class”
• Thông dịch và thực thi: dùng lệnh “java”.
6
3
- Dịch và thực thi chương trình Java (tt)
• Biên dịch chương trình
– Vào chế độ Console của Windows
– Gõ: javac Hello.java
– Nếu không có thông báo lỗi, file Hello.class
sẽ được tạo ra
• Thực thi chương trình: java Hello
7
3. Hằng, biến, kiểu dữ liệu
• Các từ khóa
• Định danh
• Hằng
• Biến
• Các kiểu dữ liệu
8
4
- Các từ khóa trong java
3. Hằng, biến, kiểu dữ liệu
9
Định danh (identifier)
• Định danh dùng biểu diễn tên của biến,
3. Hằng, biến, kiểu dữ liệu
phương thức, lớp.
• Trong Java, định danh có thể sử dụng ký
tự chữ, ký tự số và ký tự dấu.
• Ký tự đầu tiên phải là ký tự chữ, dấu gạch
dưới (_), hoặc dấu dollar ($).
• Có phân biệt giữa ký tự chữ hoa và chữ
thường.
10
5
- Biến
• Biến là vùng nhớ dùng để lưu trữ các giá
3. Hằng, biến, kiểu dữ liệu
trị của chương trình. Mỗi biến gắn liền với
một kiểu dữ liệu và một định danh duy
nhất gọi là tên biến.
• Tên biến được đặt theo quy tắc định danh
• Trong java, biến có thể được khai báo ở
bất kỳ nơi đâu trong phạm vi lớp (class).
11
Biến (tt)
• Ví dụ: Tên biến nào sau đây đặt không
3. Hằng, biến, kiểu dữ liệu
hợp lệ, giải thích?
a. bien-nguyen h. –SoThu2
b. 3Dientich i.sothu-3
c. ChuVi j. SOTHU4
d. ban_Kinh k.sothu5_
e._number l. So thu 6
f. chieu$dai m. $sothu7
g. sothu_1
12
6
- Biến (tt)
• Khai báo biến
3. Hằng, biến, kiểu dữ liệu
– ;
– = ;
– Ví dụ:
int a, b, c;
int a = 5, b = 7;
byte A = 11;
double pi = 3.14159;
char kytu = 'b';
boolean b = true;
13
Biến cục bộ và biến toàn cục
• Biến cục bộ: là biến chỉ có thể truy xuất
3. Hằng, biến, kiểu dữ liệu
trong phạm vi một hàm hoặc một khối
lệnh.
• Biến toàn cục: là biến có thể truy xuất ở
khắp nơi trong chương trình, thường
được khai báo sau từ khóa public, hoặc
nằm trong phạm vi lớp.
14
7
- Biến cục bộ và biến toàn cục (tt)
• Ví dụ :
3. Hằng, biến, kiểu dữ liệu
15
Các kiểu dữ liệu
• Java có hai kiểu dữ liệu
3. Hằng, biến, kiểu dữ liệu
– Kiểu dữ liệu cơ sở
• char, boolean, int, short, long, float, double,..
– Kiểu đối tượng
• Array, String, class
16
8
- Các kiểu dữ liệu
• Các kiểu dữ liệu cơ sở trong java
3. Hằng, biến, kiểu dữ liệu
17
Các kiểu dữ liệu cơ sở
• Kiểu số nguyên
3. Hằng, biến, kiểu dữ liệu
Kiểu Kích thước Miền giá trị
byte 8 bits -128…127
short 16 bits -32768…32767
int 32 bits -231…231 – 1
long 64 bits -263…263 – 1
18
9
- Các kiểu dữ liệu cơ sở (tt)
• Kiểu số thực
3. Hằng, biến, kiểu dữ liệu
Kiểu Kích thước Miền giá trị
float 32 bits -3.4e38…3.4e38
double 64 bits -1.7e308…1.7e308
• Kiểu boolean: true/false
• Kiểu char: ký tự theo chuẩn Unicode
19
Các kiểu dữ liệu cơ sở (tt)
• Kiểu số nguyên: byte, short, int, long.
3. Hằng, biến, kiểu dữ liệu
– Kiểu mặc định là int
– Không có kiểu số nguyên không dấu
– 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 → kết quả kiểu long.
• Một trong hai toán hạng không phải long thì được
chuyển thành 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, short sẽ được chuyển
sang kiểu int trước khi thực hiện phép toán.
• Không thể chuyển biến kiểu int và kiểu boolean
20
10
- Các kiểu dữ liệu cơ sở (tt)
• Kiểu số thực: float và double
3. Hằng, biến, kiểu dữ liệu
– Không có giá trị nhỏ nhất và lớn nhất
– Lưu ý đối với các phép toán trên số thực:
• Mỗi toán hạng đều có kiể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 → 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.
21
Các kiểu dữ liệu cơ sở (tt)
• Kiểu ký tự (char):
3. Hằng, biến, kiểu dữ liệu
– Có kích thước là hai bytes
– Chỉ dùng để biểu diễn các ký tự trong bộ mã
Unicode.
– kiểu char trong java có thể biểu diễn tất cả
216 = 65536 ký tự khác nhau.
– Giá trị mặc định cho một biến kiểu char là null.
22
11
- Các kiểu dữ liệu cơ sở (tt)
• Kiểu luận lý (boolean):
3. Hằng, biến, kiểu dữ liệu
– Kiểu boolean chỉ nhận một trong hai giá trị:
true hoặc false.
– Trong java kiểu boolean không thể chuyển
thành kiểu số nguyên và ngược lại.
– Giá trị mặc định của kiểu boolean là false.
23
Chuyển đổi kiểu dữ liệu
• Chuyển đổi kiểu dữ liệu: sử dụng các hàm
3. Hằng, biến, kiểu dữ liệu
thuộc gói java.lang
Kiểu dữ liệu Hàm chuyển đổi
byte Byte.parseByte
short Short.parseShort
int Integer.parseInt
long Long.parseLong
float Float.parseFloat
double Double.parseDouble
24
12
- Hằng
• Hằng là một giá trị bất biến trong chương
3. Hằng, biến, kiểu dữ liệu
trình
• Tên hằng được đặt theo qui ước giống như
tên biến.
– Hằng số nguyên: trường hợp giá trị hằng ở dạng
long ta thêm vào tiếp vĩ ngữ “l” hay “L”. (ví dụ:
1L)
– Hằng số thực: truờng hợp giá trị hằng có kiểu
float ta thêm tiếp vĩ ngữ “f” hay “F”, còn kiểu số
double thì ta thêm tiếp vĩ ngữ “d” hay “D”.
– Hằng boolean: true, false.
– Hằng ký tự: là một ký tự nằm giữa cặp dấu nháy
đơn.
• Ví dụ: ‘a’: hằng ký tự a
25
Hằng (tt)
• Khai báo hằng:
3. Hằng, biến, kiểu dữ liệu
– Cú pháp: final type name = value;
• Ví dụ:
– final char CH = ‘a’;// Khai báo hằng CH kiểu
char, có giá trị là ‘a’
– public final int ID = 6;// Khai báo hằng ID kiểu
int, có giá trị là 6, có phạm vi toàn cục
26
13
- Hằng (tt)
Ký hiệu Biểu diễn ký tự
• Một số hằng
3. Hằng, biến, kiểu dữ liệu
\n Xuống hàng
ký tự đặc biệt
\r Dấu enter
\f Đầy trang
\b Xóa lùi
\s Khoảng trắng
\t tab
\" Nháy kép
\' Nháy đơn
\\ Ký tự 27
4. Toán tử và biểu thức
• Toán tử số học
28
14
- Toán tử và biểu thức (tt)
• Toán tử so sánh
29
Toán tử và biểu thức (tt)
• Toán tử luận lý
30
15
- Toán tử và biểu thức (tt)
• Toán tử ép kiểu
– É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ó thể mất mát thông tin)
– Cú pháp:
= (kiểu_dữ_liệu) ;
– Ví dụ:
• float fNum = 2.2;
• int iCount = (int) fNum; // (iCount = 2)
31
Toán tử và biểu thức (tt)
• Toán tử điều kiện
– Cú pháp:
? : < biểu thức 2>
• Ví dụ:
int x = 10;
int y = 20;
int Z = (x
- 5. Mảng
• Khái niệm mảng
• Khai báo mảng
• Truy cập mảng
• Các thao tác trên mảng
• Truyền mảng cho phương thức
• class Array
33
Khái niệm mảng
• Mảng là tập hợp nhiều phần tử có cùng
kiểu dữ liệu
• Mỗi phần tử trong mảng được truy xuất
thông qua chỉ số, bắt đầu là 0.
5. Mảng
34
17
- Khai báo mảng
• Cú pháp:
[ ];
[ ] ;
• Ví dụ:
Mảng
int arrInt [ ];
hoặc int [ ] arrInt;
Int [ ] arrInt1, arrInt2, arrInt3;
35
Khai báo mảng (tt)
• Cấp phát bộ nhớ cho mảng: từ khóa new
int[] list = new int[5];
for (int i = 0; i < list.length; i++)
list[i] = 2 * i + 1;
• Khởi tạo mảng
Mảng
– Có thể khởi tạo giá trị ban đầu cho các phần
tử của mảng khi khai báo.
– Ví dụ:
int arrInt [] = {1, 2, 3};
char arrChar[] = {‘a’, ‘b’, ‘c’};
String arrColor[]={“Red”, “Green”, “Blue”};
36
18
- Các thao tác trên mảng
• Truy cập mảng
– Các phần tử của mảng được truy xuất thông
qua chỉ số (phần tử đầu tiên có chỉ số là 0)
đặt giữa cặp dấu ngoặc vuông ([ ]).
Mảng
– Ví dụ:
int arrInt[] = {1, 2, 3};
int x = arrInt[0]; // x = 1.
int y = arrInt[1]; // y = 2.
int z = arrInt[2]; // z = 3.
37
Các thao tác trên mảng (tt)
• Truy xuất số phần tử mảng:
– Sử dụng thuộc tính length, ví dụ:
double[] arr = new double[100];
for (int i = 0; i< arr.length; i++)
Mảng
{
arr[i] = input.nextDouble();
}
38
19
- Các thao tác trên mảng (tt)
• Duyệt mảng sử dụng vòng lặp:
int list[] = {1, 5, 3, 6};
int sum = 0;
for (int i = 0; i < list.length; i++)
{
Mảng
sum += list[i];
System.out.println("list[" + i + "]=" + list[i]);
}
System.out.println("sum of list is:" + sum);
39
Các thao tác trên mảng (tt)
• Duyệt mảng sử dụng for-each:
– Duyệt mảng theo mỗi phần tử, sử dụng biến
đại diện
– Cú pháp:
Mảng
for ( : ) {
;
}
• type: kiểu dữ liệu
• name: biến đại diện mỗi phần tử
• array: tên mảng
40
20
nguon tai.lieu . vn