32
CÚ PHÁP CƠ BẢN LẬP TRÌNH JAVA Nguyễn Hoàng Anh Email: [email protected] ĐH KHTN, 2011

02. Java Programming - Basic Syntax

Embed Size (px)

Citation preview

Page 1: 02. Java Programming - Basic Syntax

CÚ PHÁP CƠ BẢN

LẬP TRÌNH JAVA

Nguyễn Hoàng Anh

Email: [email protected]

ĐH KHTN, 2011

Page 2: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Nội dung

Cấu trúc chương trình

Ghi chú

Kiểu dữ liệu cơ bản

Chuyển đổi kiểu dữ liệu

Nhập xuất console

Cấu trúc rẽ nhánh

Cấu trúc lặp

break và continue

Math

Page 3: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Cấu trúc chương trình

Page 4: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Cấu trúc chương trình

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

package gui;

import java.util.Scanner;

import java.io.*;

/**

* @author NHAnh

*/

public class Main{

/**

* @param args the command line arguments

*/

public static void main(String [] args){

//TODO code application logic here

. . .

}

}

Page 5: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Ghi chú

Cách 1:

// Ghi chú 1 dòng

Cách 2:

/*

* Ghi chú nhiều dòng

*/

Page 6: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Ghi chú

Cách 3:

/* *

* Ghi chú Javadoc

*/

Page 7: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Kiểu dữ liệu thường dùng

Số nguyên: int, long

Số thực: float, double

Chuỗi: char, String

Ngày: Date

Page 8: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Chuyển đổi kiểu dữ liệu sang chuỗi

8

1

2

3

4

5

6

7

8

9

10

String String.valueOf (Object obj)

String String.valueOf (boolean b)

String String.valueOf (char c)

String String.valueOf (char [] data)

String String.valueOf (char[] data, int offset, int count)

String String.valueOf (boolean b)

String String.valueOf (int i)

String String.valueOf (long l)

String String.valueOf (float f)

String String.valueOf (double d)

Page 9: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Chuyển đổi kiểu dữ liệu sang số nguyên

9

1

2

3

4

5

6

7

8

9

10

//Kiểu int

Integer Integer.valueOf (String str)

int i = Integer.valueOf (String str).intValue()

Integer Integer.valueOf (int i)

int i = Integer.parseInt (String str)

//Kiểu long

Long Long.valueOf (String str)

long i = Long.valueOf (String str).longValue()

Long Long.valueOf (long l)

Long l = Long.parseLong (String str)

Page 10: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Chuyển đổi kiểu dữ liệu sang số thực

10

1

2

3

4

5

6

7

8

9

10

//Kiểu float

Float Float.valueOf (String str)

float i = Float.valueOf (String str).floatValue()

Float Float.valueOf (int i)

float f = Float.parseFloat (String str)

//Kiểu long

Double Double.valueOf (String str)

double i = Double.valueOf (String str).doubleValue()

Double Double.valueOf (double l)

double d = Double.parseDouble (String str)

Page 11: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Chuyển đổi kiểu dữ liệu sang kiểu ngày

11

1

2

3

4

5

6

7

8

9

//Ngày tháng năm

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");

Date d= sdf.parse("2/2/2000");

//Năm tháng ngày

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd";

Date d= sdf.parse("2000-1-30");

//Tháng ngày năm

SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");

Date d= sdf.parse("3/20/2000");

Page 12: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Hằng số

Cách khai báo:

final KieuDuLieu TENHANGSO = GiaTri;

Ví dụ:

final double PI = 3.14;

Page 13: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Toán tử thường dùng

+, -, *, /, %

++, --

+=, -=, *=, /= , %=

& , | , !

&&, ||

Page 14: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Nhập liệu từ màn hình console

Thư viện:

java.util.Scanner;

Sử dụng:

Scanner scan = new Scanner (System.in);

String str = scan.nextLine ();

Page 15: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Xuất ra màn hình console

Cú pháp:

System.out.print(…);

System.out.println(…);

Ví dụ:

System.out.print(“Nguyễn Hoàng Anh”);

System.out.println(“Đại Học Khoa Học Tự Nhiên”);

Page 16: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Định dạng xuất

%b : boolean

%c : char

%d : int, long

%f : float, double

%s : String

16

Page 17: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Định dạng xuất

1

2

3

4

5

6

7

8

String mssv=“0212055”;

String hoVaTen = “Trần Duy Thảo”;

Double diem = 9.5;

//Xuất theo cách thông thường

System.out.println(mssv + “-” + hoVaten + “:” + diem);

//Định dạng xuất

String str = String.format(“%s - %s : %f”, mssv, hoVaTen, diem);

System.out.println(str);

1

2

3

4

5

6

7

// Định dạng

String.format(“định dạng”, tham số 1, …, tham số n);

// Ví dụ

int n = 100;

double m = 20.8;

String str = String.format (“n = %d, m= %f”, n, m);

System.out.println (str);

Page 18: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

if

1

2

3

4

5

if (biểu thức điều kiện) {

lệnh 1;

lệnh n

}

1

2

3

4

5

6

Scanner scan = new Scanner (System.in);

String str = scan.nextLine ();

int n = Integer.parseInt(str);

if ( n > 0 ) {

System.out.println(“n là số dương”);

}

Page 19: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

1

2

3

4

5

if (biểu thức điều kiện) {

. . .

} else {

. . .

}

if - else

1

2

3

4

5

6

7

8

System.out.println(“n=“);

Scanner scan = new Scanner(System.in);

int n = Integer.parseInt(scan.nextLine());

if (n > 0) {

System.out.println(“n là số dương”);

} else {

System.out.println(“n là số âm”);

}

Page 20: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

if - else if - else

1

2

3

4

5

6

7

8

9

10

11

if (biểu thức điều kiện) {

}else if (biểu thức điều kiện) {

}

else if (biểu thức điều kiện) {

}

else {

}

Page 21: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

if - else if - else

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

Scanner scan = new Scanner(System.in);

System.out.print(“Điểm trung bình:”);

int diem = Integer.parseInt(scan.nextLine());

if (diem>=9) {

System.out.println(“Xuất sắc”);

} else if (diem>=8 && diem<9) {

System.out.println(“Giỏi”);

}

else if (diem>=7 && diem <8) {

System.out.println(“Khá”);

}

else if (diem>=5 && diem <7) {

System.out.println(“Trung bình”);

}

else {

System.out.println(“Dưới trung bình”);

}

Page 22: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

switch - case

22

1

2

3

4

5

6

7

8

9

10

11

switch (giá trị){

case giá trị 1:

break;

case giá trị N:

break;

default:

}

1

2

Giá trị : char, byte, short, int

Giá trị 1, giá trị 2 có cùng kiểu dữ liệu với giá trị

Page 23: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

switch - case

23

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

int thang= 8;

String str;

switch (thang) {

case 1: str = “Tháng giêng”; break;

case 2: str = “Tháng hai”; break;

. . .

case 11: str = “Tháng mười một”; break;

case 12: str = “Tháng mười hai”; break;

default: str = “Tháng không hợp lệ”; break;

}

System.out.println(str);

Page 24: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

while

1

2

3

while (điều kiện lặp) {

}

1

2

3

4

5

6

7

8

9

Scanner scan = new Scanner (System.in);

System.out.print(“Nhập n:”);

int n = Integer.parseInt(scan.nextLine());

int s=0;

int i=1;

while (i<=n) {

s = s + I;

}

System.out.println(“S=“+s);

Page 25: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Cấu trúc lặp do while

1

2

3

do{

……

}while (điều kiện lặp)

1

2

3

4

5

6

Scanner scan = new Scanner (System.in);

int n;

do{

System.out.print(“Nhập n:”);

n = Integer.parseInt(scan.nextLine());

}while (n < 3 && n>=10)

Page 26: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Cấu trúc lặp for

1

2

3

for (khởi tạo biến; điều kiện lặp; hành động sau mỗi lần lặp){

….

}

1

2

3

4

5

6

7

8

Scanner scan = new Scanner (System.in);

System.out.print(“Nhập n:”);

int n = Integer.parseInt(scan.nextLine());

int s=0;

for (int i=1; i<=n; i++){

s = s + i;

}

System.out.println(“S=“+s);

Page 27: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

break

Phạm vi sử dụng

– Sử dụng trong for, while, do-while

Công dụng

– Thoát khỏi vòng lặp

27

1

2

3

4

5

6

7

8

9

Scanner scan = new Scanner (System.in);

System.out.print(“Nhập n:”);

int n = Integer.parseInt(scan.nextLine());

for (int i=1; i<=n; i++){

System.out.print(i+” “);

if(i==5){

break;

}

}

Page 28: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

break

Phạm vi sử dụng

– Sử dụng trong for, while, do-while

Công dụng

– Bỏ qua bước lặp hiện tại, quay trở lại vòng lặp để

thực hiện tiếp

28

1

2

3

4

5

6

7

8

9

Scanner scan = new Scanner (System.in);

System.out.print(“Nhập n:”);

int n = Integer.parseInt(scan.nextLine());

for (int i=1; i<=n; i++){

System.out.print(i+” “);

if(i==5){

continue;

}

}

Page 29: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Math

1

2

3

4

5

6

7

8

9

10

double Math.abs (double d)

double Math.sqrt (double d)

double Math.min (double a, double b)

double Math.max (double a, double b)

double Math.exp (double e)

double Math.round (double r)

double Math.pow (double a, double b)

double Math.random ()

double Math.PI

double Math.E

Page 30: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Math

30

1

2

3

4

5

6

7

8

9

10

11

//sqrt

double d = 9.5;

double s = Math.sqrt (d);

//pow

double a = 2.3;

double b = Math.pow (b, 3);

//min - max

double c = 6;

double d = 9.2;

double min = Math.min (c, d);

double max = Math.max (c, d);

Page 31: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

Tài liệu tham khảo

Nguyễn Hoàng Anh, Tập slide bài giảng và video môn

Lập Trình Java, ĐH KHTN, 2010

The Java Language Specification Third Edition (2005)

Page 32: 02. Java Programming - Basic Syntax

Nguyễn Hoàng Anh – [email protected] – ĐH KHTN - 2011

HỎI VÀ ĐÁP

32