... lastNode
(b)
5
new ListNode
7
1
Lập trìnhJavacơ bản
Cao Đức Thông Trần Minh Tuấn
cdthong@ifi.edu.vn, tmtuan@ifi.edu.vn
50
Ví dụ 1: TreeSet
// This program sorts a set of names
import java. util.*;
public class TreeSetTest1
{
public static void main(String[] args)
{
SortedSet names = new TreeSet();
names.add(new String("Minh Tuan"));
names.add(new String("Hai Nam"));
names.add(new String("Anh Ngoc"));
names.add(new String("Trung Kien"));
names.add(new String("Quynh Chi"));
names.add(new String("Thu Hang"));
System.out.println(names);
}
}
31
Bài tập tại lớp
•
Bài 1: Dùng Stack để viết chương trình in ra
dạng nhị phân của một số nguyên dương cho
trước.
•
Bài 2: Cài đặt phương thức search trong lớp
Tree để tìm một phần tử có giá trị cho trước.
7
Cài đặt Linked List
// Dinh nghia mot node trong linked list ... nó có thể tung ra ngoại lệ
UnsupportedOperationException.
49
Mô tả các cài đặt
•
HashMap: Bảng băm (cài đặt của Map).
•
LinkedHashMap: Bảng băm kết hợp với linked list
nhằm đảm bảo thứ tự các phần tử (cài đặt của
Map).
•
TreeMap: Cây đỏ đen (cài đặt của Map).
17
Stack
•
Stack là một cấu trúc theo kiểu LIFO (Last In
First Out), phần tử vào sau cùng sẽ được lấy ra
trước.
•
Hai thao tác cơbản trên Stack
•
Chèn phần tử: Luôn chèn vào đỉnh Stack (push)
•
Lấy ra phần tử: Luôn lấy ra từ đỉnh Stack (pop)
11
Cài đặt Linked List
public boolean isEmpty()
{
return (firstNode == null);
}
public void print()
{
ListNode node = firstNode;
while (node != null)
{
... nó có thể tung ra ngoại lệ
UnsupportedOperationException.
49
Mô tả các cài đặt
•
HashMap: Bảng băm (cài đặt của Map).
•
LinkedHashMap: Bảng băm kết hợp với linked list
nhằm đảm bảo thứ tự các phần tử (cài đặt của
Map).
•
TreeMap: Cây đỏ đen (cài đặt của Map).
17
Stack
•
Stack là một cấu trúc theo kiểu LIFO (Last In
First Out), phần tử vào sau cùng sẽ được lấy ra
trước.
•
Hai thao tác cơbản trên Stack
•
Chèn phần tử: Luôn chèn vào đỉnh Stack (push)
•
Lấy ra phần tử: Luôn lấy ra từ đỉnh Stack (pop)
11
Cài đặt Linked List
public boolean isEmpty()
{
return (firstNode == null);
}
public void print()
{
ListNode node = firstNode;
while (node != null)
{
...
... ra. Chương trình
dừng lại ngay lập tức, toàn bộ phần
mã phía sau sẽ không được thực thi.
•
Java hỗ trợ cách thức để xử lý ngoại lệ
(exception handling) tuỳ theo nhu cầu
của chương trình.
30
Ném ... nên sử dụng ngoại lệ thay cho các
luồng điều khiển trong chương trình.
• Ví dụ: Kiểm tra delta trong chương trình giải
phương trình bậc 2.
•
Nên thiết kế và sử dụng ngoại lệ một
cách thống ... người dùng nhập lại.
5
Xử lý lỗi và ngoại lệ
• Trong Java, việc xử lý lỗi có thể được cài đặt
trong một nhánh độc lập với nhánh chính của
chương trình.
• Lỗi được coi như những trường hợp ngoại...
...
(extends) từ một lớp.
1
Lập trìnhJavacơ bản
Cao Đức Thông - Trần Minh Tuấn
cdthong@ifi.edu.vn, tmtuan@ifi.edu.vn
23
Ví dụ về kế thừa trong Java
// File InheritanceTest .java
public class InheritanceTest
{
... nhật.
36
Java vs C++
8. Java không có con trỏ.
9. Java không có huỷ tử (destructor), nó chỉ có phương
thức finalize() được gọi bởi Garbage Collector.
10. Java không hỗ trợ đối số mặc định.
11. Java ... các thực thể
• Dễ phát triển, mở rộng
chương trình
Object A
Object C
Object B
Object D
3
Các phương pháp lập trình
•
Step-by-Step Programming
• Lậptrình từng bước
•
Machine Language, Assembly...
... dụng.
5
Kiến trúc của Java
•
Java Platform
•
Java Virtual Machine (Java VM)
•
Java Application Programming Interface (Java API)
Hardware-Platform
Java VM
Java API
myProgram .java
Java Platform
Mã nguồn
3
Giới ... dung động (web applet)
•
Hiện nay, Java được sử dụng để phát triển nhiều
loại ứng dụng khác nhau: cơ sở dữ liệu, mạng,
Internet, viễn thông
1
Lập trìnhJavacơ bản
Cao Đức Thông - Trần Minh Tuấn
cdthong@ifi.edu.vn, ... dụng Java
•
Hai loại ứng dụng Java
•
Application: Ứng dụng độc lập
•
Applet: Ứng dụng chạy trên Web
•
Thư viện lớp Java
•
Bộ JDK bao gồm rất nhiều lớp chuẩn đã
được xây dựng sẵn.
•
Lập trình...
... 2000/XP, Java, …
2. Lậptrình web với tiếngViệt Unicode
2.1. Chỉ định bảng mã dùng trong trang web
Khi một trang web được server chuyển xuống cho client, trình duyệt sẽ dùng thông tin về bảng ... SQL, kiến thức về kết nối và lập
trình cơ sở dữ liệu với ADO.
2. Một số kiến thức cơbản về ASP
Một trang ASP thường có một số đặc điểm sau:
- Là một tập tin văn bản (text file) có phần mở ... ngữ lậptrình VB script, Java script. VB Script là ngôn ngữ lậptrình thông
dụng cho ASP.
- Thông thường các ứng dụng web có liên quan nhiều đến việc quản lí, truy xuất, cập nhật cơ sở dữ
liệu...
... phương thức phải có một phạm vi
nhất định
35
Java vs C++
1. Một chương trìnhJava chạy chậm hơn so với một
chương trình C tương ứng khoảng 20 lần.
2. Java không có kiểu liệt kê (enum), kiểu cấu ... nó.
36
Java vs C++
8. Java không có con trỏ.
9. Java không có huỷ tử (destructor), nó chỉ có phương
thức finalize() được gọi bởi Garbage Collector.
10. Java không hỗ trợ đối số mặc định.
11. Java ... class. Mọi biến
hay hàm của Java đều nằm trong một class nào đó.
3. Java không có toán tử phạm vi (scope) ::
4. Cỡ của các kiểu dữ liệu nguyên thuỷ (primitive) trong
Java không phụ thuộc vào máy....
...
‘A’
cọ m säú l
65
,
‘a’
cọ m säú l
97
trong bng m
ASCII,.v.v.
Âãø hiãøn thë bng m ASCII, bản chảy chỉång trçnh sau:
Program ASCI I_Table;
Uses CRT;
Var I : Integer;
Begin
ClrScr;...
... dưới đây
Lương cơbản : $ 12000
DA : 12% lương cơ bản
HRA : $150
TA : $120
Các mục khác : $450
Thuế :
PF :14% lương cơbản và IT: 15% lương cơ bản
Lương thực lãnh = Lương cơbản + DA + HRA ... nhất của trường dữ liệu. Các dữ liệucó độ rộng nhỏ
Trang 43
Lập trình C căn bản GV: Lý Sỹ Ngọc Lầu
Bài tập tự làm
3. Viết một chương trình nhập và cộng ba số.
4. Viết một chương trình tính giá ... dữ liệu void được sử
dụng để chỉ ra điều này.
2.4.1 Những kiểu dữ liệucơbản và dẫn xuất
Bốn kiểu dữ liệu (char, int, float và double) mà chúng ta đã thảo luận ở trên được sử dụng cho
việc trình...
... );
postorder( node.rightNode );
System.out.print( node.data + " " );
}
}
1
Lập trìnhJavacơ bản
Cao Đức Thông - Trần Minh Tuấn
cdthong@ifi.edu.vn, tmtuan@ifi.edu.vn
19
Sử dụng Stack
public ... phần tử nằm trong khoảng từ e1 tới e2.
3
Cấu trúc dữ liệu
•
Cấu trúc dữ liệu là cách tổ chức dữ liệu
để giải quyết vấn đề.
•
Một số cấu trúc dữ liệu phổ biến:
•
Mảng (Array)
• Danh sách liên kết ... theo kiểu LIFO (Last
In First Out), phần tử vào sau cùng sẽ
được lấy ra trước.
•
Hai thao tác cơbản trên Stack
•
Chèn phần tử: Luôn chèn vào đỉnh Stack
(push)
•
Lấy ra phần tử: Luôn lấy ra...
... Bài giảng Lậptrình Java
4
Các kiểu dữ liệu
Java có hai loại kiểu dữ liệu chính: kiểu dữ liệu đơn
nguyên và kiểu dữ liệu tham chiếu.
Các kiểu dữ liệu đơn nguyên
Các kiểu dữ liệucơ sở
Nhiều ... i;
Nguyễn Đức Hiển – Bài giảng Lậptrình Java
3
Nội dung
Kiểu dữ liệu Java
Toán tử
Cấu trúc điều khiển
Mảng
Kiểu chuổi (String)
Nguyễn Đức Hiển – Bài giảng Lậptrình Java
21
Các toán tử chuổi
Toán ... – Bài giảng Lậptrình Java
7
Chuyển kiểu
Thứ tự chuyển kiểu:
byte short int long float double
Các ví dụ:
Nguyễn Đức Hiển – Bài giảng Lậptrình Java
13
Nhập/xuất cơ bản
Tạo đối...
...
sẽ như hình B.
động theo đường path, và 1 số lý thuyết cơbản chúng ta đã có 1 số kiến thức cơbản về Swishmax để bước vào
các bài tập căn bản đòi hỏi sự kết hợp giữa các yếu tố này cũng như cách ... OBJECT:
5.1/ Proerties
panel (bảng properties):
a/ Scene:
d/ Text:
đặc trưng
5.7: Component panel và
Parameters panel:
Giáo trình SwishMax cơ bản
Chương 1 - Giao diện (layout) ... object vào 1 object Movie
Clip (MC). đặt tên là MC_1
2.b/ Chắc chắn MC_1 trong bảng Outline được chọn, Ta vào bảng Properties
đánh dấu "Use Bottom object as a mask"
3/ Ctrl + Enter...
... điểm của Java
✦
Java is simple
✦
Java is object-oriented
✦
Java is distributed
✦
Java is interpreted
✦
Java is robust
✦
Java is secure
✦
Java is architecture-neutral
✦
Java is portable
✦
Java s ... như ĐTDĐ.
Bài giảng sử dụng J2SE để giới thiệu lậptrình Java.
10
Một chương trìnhJava đơn giản
Ví dụ 1.1
// Chương trình in dòng: Welcome to Java!
package ch01;
public class Welcome {
public ... "Welcome to Java! "
✦
Bạn có thể gọi phương thức println với các tham số khác
nhau để in ra những message khác nhau.
9
Bắt đầu với lậptrình Java
✦
Một chương trìnhJava đơn giản
✦
Biên...