1. Trang chủ
  2. » Công Nghệ Thông Tin

Các kỹ thuật cơ bản trong java

52 669 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Các kỹ thuật cơ bản trong java
Tác giả Đoàn Văn Ban
Trường học Viện Đại Học Mở Hà Nội
Chuyên ngành Kỹ thuật lập trình
Thể loại Bài giảng
Năm xuất bản 2013
Thành phố Hà Nội
Định dạng
Số trang 52
Dung lượng 0,92 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục tiêu • Nắm được các kỹ thuật xử lý cơ bản của ngôn ngữ java như: nhập, xuất dữ liệu, xử lý mảng, cơ chế bộ nhớYêu cầu... • Giới thiệu các trúc điều khiển trong lập trình: lệnh rẽ nhá

Trang 1

VIỆN ĐẠI HỌC MỞ HÀ NỘI

HA NOI OPEN UNIVERSITY

Chương 2

CÁC KỸ THUẬT CƠ BẢN TRONG JAVA

Trang 2

Mục tiêu và yêu cầu

• Cung cấp các khái niệm, phương pháp cơ bản của ngôn

ngữ java

Mục tiêu

• Nắm được các kỹ thuật xử lý cơ bản của ngôn ngữ java

như: nhập, xuất dữ liệu, xử lý mảng, cơ chế bộ nhớYêu cầu

Trang 3

Tài liệu tham khảo

 Chương 2: Giáo trình Kỹ thuật lập trình hướng đối tượng –Khoa CNTT – Viện Đại học Mở Hà Nội

 Các thành phần cơ bản - Lập trình Hướng đối tượng vớiJava, Đoàn Văn Ban, NXB Khoa học kỹ thuật, 2003

Trang 4

Nội dung bài học

• Các thành phần cơ bản trong ngôn ngữ Java: kiểu dữ liệu, biến,hằng, toán tử, biểu thức, câu lệnh, khối lệnh,

• Giới thiệu các trúc điều khiển trong lập trình: lệnh rẽ nhánh (if switch), lệnh lặp (for – do – while)

-• Kỹ thuật vào – ra dữ liệu

• Kỹ thuật xử lý dữ liệu kiểu mảng, ngày tháng, xâu ký tự, sốngẫu nhiên, sử dụng các hàm tính toán (Math), chuyển đổi kiểu

dữ liệu

Khái niệm

Trang 5

2.1 Các thành phần cơ bản

Java có 2 nhóm kiểu dữ liệu: cơ sở và mở rộng

- Kiểu dữ liệu cơ sở:

Kiểu dữ liệu

Trang 6

2.1 Các thành phần cơ bản (tiếp)

• Là đại lượng có giá trị có thể thay đổi trong chương trình

• Tên biến: Không chứa dấu cách, ký tự bắt đầu là chữ cái, dấugạch dưới hoặc dấu $

• Có thể khai báo ở các vị trí tùy ý trong chương trình

• Không được trùng với các từ khóa

Biến

Trang 7

2.1 Các thành phần cơ bản (tiếp)

• Là đại lượng có giá trị không đổi trong chương trình

• Tên hằng: giống với biến

Trang 8

so sánh <, <=, >, >=, ==, !=, instanceof

Trang 10

2.2 Các cấu trúc điều khiển

• Được sử dụng khi ta muốn chương trình thực hiện một hoặc mộtnhóm lệnh nào đó thỏa mãn từng điều kiện cụ thể

Trang 11

2.2 Các cấu trúc điều khiển (tiếp)

Kiểm tra và thông báo tam giác ABC có phải là tam giác vuônghay không?

public class Example01 {

public static void main(String str[]){

Ví dụ 1 (if else):

Trang 12

2.2 Các cấu trúc điều khiển (tiếp)

• Trong trường hợp muốn chương trình thực hiện một hoặc mộtnhóm lệnh nào đó trong nhiều nhóm lệnh khác nhau (dựa trên cácđiều kiện cụ thể)

Trang 13

2.2 Các cấu trúc điều khiển (tiếp)

Hiện thị từ tiếng anh ứng với một giá trị số nguyên

public class Example02 {

public static void main(String str[]){

int so=3;

switch(so){

case 1: System.out.println(so+"-One"); break;

case 2: System.out.println(so+"-Two"); break;

case 3: System.out.println(so+"-Three"); break;

default: System.out.println("Chưa học"); break;

} }

Ví dụ 2 (switch case):

Trang 14

2.2 Các cấu trúc điều khiển (tiếp)

• Được sử dụng khi ta muốn chương trình thực hiện một lệnhhoặc một nhóm lệnh nào đó nhiều lần

Các lệnh lặp

Trang 15

2.2 Các cấu trúc điều khiển (tiếp)

• Cú pháp:

for ( nhóm_lệnh_1 ; điều_kiện ; nhóm_lệnh_2 ){ nhóm_lệnh_lặp;

}Máy thực hiện:

- b1: nhóm_lệnh_1

- b2: kiểm tra điều_kiện , nếu đúng máy thực hiện

+ nhóm_lệnh_lặp

+ nhóm_lệnh_2 và quay về b2 nếu điều_kiện có giá trị sai thì thoát khỏi vòng lặp.

Lệnh lặp for

Trang 16

2.2 Các cấu trúc điều khiển (tiếp)

• Cú pháp:

do {

Nhóm_lệnh_lặp;} while ( điều_kiện );

Máy thực hiện:

- b1: Nhóm_lệnh_lặp

- b2: kiểm tra nếu điều_kiện có giá trị đúng (true) thì quay

về b1, ngược lại thì thoát khỏi vòng lặp

Lệnh lặp do while

Trang 17

2.2 Các cấu trúc điều khiển (tiếp)

• Cú pháp:

while (điều_kiện){

Nhóm_lệnh_lặp;}

• Máy thực hiện: kiểm tra nếu điều_kiện có giá trị đúng (true) thì thực hiện Nhóm_lệnh_lặp rồi lặp lại việc kiểm tra điều_kiện , nếu sai thì thoát khỏi vòng lặp

Lệnh lặp while

Trang 18

2.2 Các cấu trúc điều khiển (tiếp)

public class Example03a {

public static void main(String str[]){

int i;

for(i=30;i<=100;i++)if(i%6==0)

System.out.print(i + "\t");

}

Ví dụ 3a: Tìm và hiện các số nguyên thuộc [30 100] và chia

hết cho 6

Trang 19

2.2 Các cấu trúc điều khiển (tiếp)

public class Example03b {

public static void main(String str[]){

Trang 20

2.2 Các cấu trúc điều khiển (tiếp)

public class Example03c {

public static void main(String str[]){

Trang 21

2.2 Các cấu trúc điều khiển (tiếp)

câu lệnh continue: bỏ qua các lệnh còn lại và quay về đầu

vòng lặp

Trang 22

2.2 Các cấu trúc điều khiển (tiếp)

câu lệnh break: nhảy ra khỏi vòn lặp vô điều kiện.

Trang 23

2.2 Các cấu trúc điều khiển (tiếp)

public class Example04a {

public static void main(String str[]){

Trang 24

2.2 Các cấu trúc điều khiển (tiếp)

public class Example04b {

public static void main(String str[]){

Ví dụ 4b: Hiện dãy các số 1 4 7 10 13 cho đến khi tổng các

số của dãy lớn hơn 200 thì dừng

Trang 25

2.3 Kỹ thuật vào ra dữ liệu

Giới thiệu

Trang 26

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

Stream (dòng): là một “dòng chảy” của dữ liệu được gắn với các

thiết bị vào ra

• Dòng nhập: Gắn với các thiết bị nhập như bàn phím, máy scan,file

• Dòng xuất: Gắn với các thiết bị xuất như màn hình, máy in,file

Trang 27

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

• Java cung cấp hệ thống thư viện thực hiện vào/ra dữ liệu kháphong phú dưới dạng các lớp đối tượng

1 InputStream java.io Nhập dữ liệu mức thấp

2 FileInputStream java.io Đọc dữ liệu tệp tin mức thấp

3 DataInputStream java.io Nhập dữ liệu có định kiểu

4 ObjectInputStream java.io Nhập dữ liệu dạng đối tượng

5 ByteArrayInputStream java.io Đọc dữ liệu dựa trên mảng byte

Trang 28

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

7 OutputStream java.io Xuất dữ liệu mức thấp

8 FileOutputStream java.io Ghi dữ liệu ra tệp tin mức thấp

9 DataOutputStream java.io Xuất dữ liệu có định kiểu

10 File java.io Xử lý tệp tin

11 Scanner java.util Xử lý nhập dữ liệu đơn giản

Trang 29

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

• Lớp PrintStream

Xuất dữ liệu

Phần định dạng:

- “%d”, “%f”, “%s”, …

- %nd”, “%[n.m]f”, “%[±n]s”, …

Trang 30

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

• Lớp Scanner

- Thư viện: java.util.Scanner

- Khai báo biến đối tượng:

Trang 31

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

• Lớp FileOutputStream

• Các bước thao tác với tệp (ghi dữ liệu):

- Bước 1: Tạo đối tượng ghi tệp*/

PrintStream <tên_biến> = new PrintStream(

Trang 32

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

public class file01 {

public static void main(String arg[]) throws Exception {

PrintStream ps = new PrintStream(new

FileOutputStream("D:\\HocLT\\data.txt"));ps.printf("Nguyen Van A");

Trang 33

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

• Lớp FileInputStream

• Các bước thao tác với tệp (ghi dữ liệu):

- Bước 1: Tạo đối tượng đọc tệp

Scanner <tên_biến> = new Scanner(

Trang 34

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

public class file02 {

public static void main(String arg[]) throws Exception {

Scanner sc = new Scanner(new

FileInputStream("D:\\HocLT\\data.txt"));String ten = sc.nextLine();

int nam = sc.nextInt();

sc.close();

System.out.printf("%s \n%d",ten,nam);

Ví dụ: Đọc tệp data.txt và hiện dữ liệu ra màn hình

Trang 35

2.3 Kỹ thuật vào ra dữ liệu (tiếp)

}f.close();

Trang 36

2.4 Xử lý mảng

- Cơ chế cấp phát động

- Khai báo:

Ví dụ:

int a[];

Float b[][];

- Cấp phát vùng nhớ:

Trang 37

a[1] = new int[5]; /*hàng 1 có 5 phần tử*/

a[2] = new int[3]; /*hàng 2 có 3 phần tử*/

mảng a:

Trang 38

2.5 Kiểu Date - Calendar

Date( ms ) Tạo đối tượng theo số mili giây

Date( d,m,y) Tạo đối tượng theo ngày, tháng, năm after( d ) Kiểm tra sau ngày khác

before( d ) Kiểm tra trước ngày khác

equals( d ) So sánh 2 ngày bằng nhau

getDay(),getMonth(), getYear() Lấy ngày, tháng, năm

Lớp Date

Trang 39

2.5 Kiểu Date - Calendar (tiếp)

Trang 40

2.5 Kiểu Date - Calendar (tiếp)

Ví dụ: Lấy ngày, tháng, năm hiện tại

Trang 41

String str1=new String();

String str2=new String(“”Hello world“”);

Trang 42

2.6 Kiểu String (tiếp)

length() Lấy độ dài (số ký tự) của xâu

trim() Cắt bỏ khoảng cách ở hai đầu xâu

charAt(i) Lấy ký tự thứ i trong xâu (bắt đầu từ 0)

substring(i,j) Lấy xâu con từ i đến j-1 trong xâu

equals(s) So sánh bằng với xâu ký tự khác

startsWith(s) Kiểm tra có là đoạn con bắt đầu của xâu endsWith(s) Kiểm tra có là đoạn con kết thúc của xâu

Trang 43

2.6 Kiểu String (tiếp)

indexOf(s) Cho biết vị trí xuất hiện đầu của đoạn con slastIndexOf(s) Cho biết vị trí xuất hiện cuối của đoạn con stoLowerCase() Chuyển xâu ký tự về dạng chữ thường

toUpperCase() Chuyển xâu ký tự lên dạng chữ hoa

Trang 44

2.6 Kiểu String (tiếp)

Ví dụ: chuyển đổi xâu về dạng tên riêng

Trang 45

2.7 Số ngẫu nhiên

• Lớp : Random

• Các bước sinh số ngẫu nhiên:

+ Bước 1: Tạo đối tượng Random

Random a = new Random();

+ Bước 2: Dùng lệnh để lấy số ngẫu nhiên

a.nextInt(); //lấy số nguyêna.nextInt(g); //lấy số nguyên từ 0 đến g-1a.nextFloat(); //lấy số thực từ 0 đến 1

Trang 46

2.7 Số ngẫu nhiên (tiếp)

Ví dụ: Tạo mảng 100 phần tử có giá trị các phần tử là các số

nguyên ngẫu nhiên trong khoảng [1 500]

Trang 47

2.8 Thư viện Math

Math.sqrt(x) Tính căn bậc hai

Math.pow(x,y) Tính lũy thừa x y

Math.sin(x),cos,asin,… Tính lượng giác sin, cos, asin, acos…

Math.abs( x ) Tính giá trị tuyệt đối

Math.exp( x ) Tính lũy thừa cơ số E

Math.log( x ) Tính logarit tự nhiên

Math.min(x,y), max Tính min, max

Math.round( x ) Làm tròn số

Math.ceil( x ) Lấy số nguyên cận trên

Math.floor( x ) Lấy số nguyên cận dưới

Trang 48

2.9 Xử lý ngoại lệ

• Ngoại lệ (Exception): là các lỗi phát sinh trong khi chạychương trình (runtime)

Exception Bao hàm tất cả các lỗi

IOException Lỗi vào/ra dữ liệu

NumberFormatException Lỗi định dạng dữ liệu số

OutOfMemoryException Lỗi tràn bộ nhớ

NullPointerException Lỗi tham chiếu có giá trị null

Trang 49

Xử lý lỗi thứ 2

finally{

Xử lý cuối cùng}

Trang 50

2.9 Xử lý ngoại lệ (tiếp)

Ví dụ: xử lý ngoại lệ phát sinh lỗi khi chuyển 1 xâu sang kiểu số

Trang 51

3 Bài tập

Bài 1: Tạo ngẫu nhiên N số nguyên Đưa ra giá trị nhỏ nhất

trong N số vừa tạo

Bài 2: Nhập một số nguyên dương N Hiện giá trị của N dạng

nhị phân

Bài 3: Viết chương trình chuẩn hóa một xâu ký tự theo dạng:

- Giữa các từ trong xâu chỉ có 1 dấu cách

- Ký tự đầu và cuối không được là dấu cách

Bài 4: Nhập 1 xâu ký tự Liệt kê số lượng mỗi ký tự có trong xâu

vừa nhập

*) Thực hành các bài tập trong chương 2 của giáo trình

Trang 52

Câu hỏi trắc nghiệm

Ngày đăng: 12/08/2014, 20:52

TỪ KHÓA LIÊN QUAN