Lập trình java - bài 2: Kiểu, toán tử, lệnh if, switch

Lập trình java - bài 2: Kiểu, toán tử, lệnh if, switch

 Lập trình java - bài 2: Kiểu, toán tử, lệnh if, switch (by Viết mã bug)

MỤC TIÊU:

+ Kết thúc bài học này bạn có khả năng
- Hiểu rõ và sử dụng kiểu nguyên thủy, lớp bao
- Chuyển đổi chuỗi sang kiểu nguyên thủy
- Sử dụng lệnh try...catch để bắt lỗi chuyển kiểu
- Hiểu và sử dụng kiểu toán tử, xây dựng biểu thức
- Sử dụng lệnh if 
- Sử dụng lệnh switch case
- Biết cách tổ chức một chương trình

KIỂU DỮ LIỆU NGUYÊN THỦY

+ Kiểu dữ  liệu nguyên thủy là kiểu được giữ lại từ ngôn ngữ C (ngôn ngữ gốc của java)
+ Có 8 kiểu dữ liệu nguyên thủy
+ Ví dụ
- int a = 17;
- double b = 2;

KIỂU NGUYÊN THỦY

kiểu nguyên thủy trong lập trình java

GIÁ TRỊ HẰNG

+ Giá trị hằng là dữ liệu có kiểu là một trong các kiểu nguyên thủy
Kiểu int: ví dụ: int i = 1702;
Kiểu long: ví dụ: long l = 12L;
Kiểu float: ví dụ: float = 17.02F;

QUY LUẬT ÉP KIỂU

+ Đối với kiểu nguyên thủy, ép kiểu tự động xảy ra theo chiều mũi tên
quy luật ép kiểu trong lập trình java
+ Ví dụ
int a = 17;
double b =17.02;
b = a; //ép kiểu tự động
a = (int)b; //ép kiểu tường minh phần thập phân sẽ bị bỏ

CHUYỂN ĐỔI CHUỖI SANG KIỂU NGUYÊN THỦY

+ Xét biểu thức 1
String a = "17";
String b = "2";
String c = a + b;
=> c là "19"
+ Xét biểu thức 2
int a = Integer.parseInt("17");
int b = Integer.parseInt("2");
int c =a + b;
=> c là 19
chuyển đổi chuỗi sang kiểu nguyên thủy trong lập trình java


SỬ DỤNG TRY...CATCH ĐỂ KIỂM LỖI

+ Xét trường hợp
int a = scanner.nextInt();
hoặc
int a = Integer.parseInt(s);
+ Điều gí sẽ xảy ra khi người dùng nhập không phải số hoặc chuỗi s không phải là chuỗi chứa số
+ Hãy sử dụng lệnh try..catch để kiểm soát các lỗi trên
try{
int a = scanner.nextInt();
     System.out.println("Bạn đã nhập đúng");
}
catch (Exception ex){
     System.out.println("Vui lòng nhập số!");
}

LỚP BAO KIỂU NGUYÊN THỦY (Wrapper)

+ Tương ứng với mỗi kiểu nguyên thủy java định nghĩa một lớp bao để bao giá trị của kiểu nguyên thủy tương ứng gọi là lớp bao kiểu nguyên thủy
+ Rất nhiều hàm trong java chỉ làm việc với đối tượng mà không làm việc với kiểu nguyên thủy
lớp bao kiểu nguyên thủy (wrapper) trong lập trình java

BAO (BOXING)/MỞ BAO (UNBOXING)

+ Boxing là việc tạo đối tượng từ lớp bao để bọc giá trị nguyên thủy.
- Có 3 cách để bao giá trị nguyên thủy sau
_ Integer a = Integer.valueOf(17) //bao tường minh
_ Integer a = new Integer(17) //bao tường minh
_ Integer a = 17 //bao ngầm định
+ Unboxing là việc mở lấy giá trị nguyên thủy từ đối tượng của lớp bao
- Có 2 cách mở bao lấy giấ trị nguyên thủy sau
_ int b = a.intValue() //mở bao tường minh
_ int b = a;//mở bao ngầm định

BOXING/UNBOXXNG

boxing/unboxxing trong lập trình java

TOÁN TỬ & VÀ BIỂU THỨC

toán tử và biểu thức trong lập trình java

Biểu thức là sự kết hợp giữa toán tử và toán hạng. Kết quả cảu biểu thức là một giá trị.
Bạn hãy dự đoán giá trị của biểu thức sau?
int x = 17%2;
boolean a = 7 < 4 && true || 3 > 1;

TOÁN TỬ SỐ HỌC

+  Toán tử số học là các phép toán toán thao tác trên các số nguyên và số thực
toán tử số học trong lập trình java

TOÁN TỬ SO SÁNH

+ Toán tử so sánh là các phép toán so sánh hai toán hạng
toán tử so sánh trong lập trình java

TOÁN TỬ LOGIC

+ Toán tử logic là các phép toán thao tác trên các toán hạng logic
toán tử logic trong lập trình java


TOÁN TỬ ĐIỀU KIỆN

+ Toán tử điều kiện là toán tử 3 ngôi duy nhất trong ngôn ngữ java
+ Cú pháp:
<điều kiện> ? <giâ trị đúng> : <giá trị sai>
+ Diễn dải:
- Nếu biểu thức <điều kiện> có giá trị là true thì kết quả của biểu thức là <giá trị đúng>, ngược lại là <giá trị sai>
+ Ví dụ: Tìm số lớn nhất của 2 số a và b
int a = 17, b = 2;
int max = a > b ? a : b;

LỆNH IF

+ Cú pháp 
if(<<điều kiện>>)
{
<<công việc>>
}
+ Diễn giải:
- Nếu điều kiện có giá trị true thì công việc được thực hiện

+ Ví dụ:
double diem = 1;
if(diem>=5){
System.out.println("Đậu");
}
+ Diễn giải: 
- Đoạn mã trên không xuất gì ra màn hình cả vì biểu thức điều kiện diem>=5 có giá trị là false

LỆNH IF...ELSE

+ Cú pháp 
if(<<điều kiện>>)
{
<<công việc 1>>
}
else
{
<<công việc 2>>
}
+ Diễn giải
- Nếu điều kiện có giá trị là true thì công việc 1 được thực hiện, ngược lại công việc 2 được thực hiện
+ Ví dụ
double diem = 1;
if(diem<5){
System.out.println("Rớt");
}
else{
System.out.println("Đậu");
}
+ Diễn giải:
- Đoạn mã trên xuất chữ "Rớt" ra màn hình vì điều kiện diem<5 có giá trị true.


NHIỀU LỆNH IF

+ Cú pháp
if(<<điều kiện 1>>){
<<công việc 1>>
}
else if(<<điều kiện 2>>){
<<công việc 2>>
}
...
else{
<<công việc N + 1>>
}
+ Diễn giải 
- Chương trình sẽ kiểm tra điều kiện 1 đến N nếu gặp điều kiện i đầu tiên có giá trị là true thì thực hiện công việc i, ngược lại sẽ thực hiện công việc N + 1
+ Ví dụ
double delta = Math.pow(b,2) - 4 * a * c;
if(delta <  0){
System.out.println("Vô nghiệm");
}
else if(delta == 0){
System.out.println("Nghiệm kép");
}
else{
System.out.println("2 nghiệm");
}
+ Diến giải
-  Đoạn mã trên biện luận và gải phương trình bậc 2

LỆNH SWITCH

+ Cú pháp 
switch(<<biểu thức>>){
case <<giá trị 1>>:
//công việc 1
break;
case <<giá trị 2>>:
//công việc 2
break;
...
default:
//công việc N + 1
break;
}
+ Diễn giải
- So sánh giá trị của biểu thức switch với giá trị cảu các case. Nếu bằng với giá trị của case nào thì sẽ thực hiện công việc của case đó, ngược lại sẽ thực hiện công việc của default.
- Nếu công việc của case không chứa lệnh break thì case tiếp sau sẽ được thực hiện
- default là tùy chọn


VÍ DỤ LỆNH SWITCH

double a =17, b=2, c=-1;
char ch ='+';
switch(ch){
case '+':
c = a + b;
break;
case '-':
c = a - b;
break;
case '*':
case':':
System.out.println("Đang xây dựng");
break;
default:
System.out.println("Vui lòng chọn +, -, *, và :");
break;
}

TỔ CHỨC CHƯƠNG TRÌNH

package com.poly;
import java.util.Scanner;
public class ChuongTrinh(){
public static void main(String[] args){
thucdon();
}
public static void thucdon(){...
public static void thucHienPhepCong(){...
public static void thucHienPhepTru(){...

}


THIẾT KẾ THỰC ĐƠN


System.out.println(">> MÁY TÍNH CÁ NHÂN <<");
System.out.println("+-----------------------------+");
System.out.println("|1. Cộng                             |");
System.out.println("|1. Trừ                                |");
System.out.println("|1.Kết thúc                         |");
System.out.println("+-----------------------------+");
System.out.println(">>   Chọn chức năng?   <<");
Scanner scanner = new Scanner(System.in);
int answer = scanner.nextInt(System.in);
if(answer == 1){
thucHienPhepCong(); //gọi phương thức thực hiện phép cộng
}
else if(answer == 2){
thucHienPhepTru() //gọi phương thức thực hiện phéptrừ
}
else if(answer == 3){
System.exit(0); //thoát ứng dụng
}

TỔNG KẾT NỘI DUNG BÀI HỌC

+ Kiểu nguyên thủy
+ Chuyển đổi chuỗi sang kiểu nguyên thủy
+ Quy luật ép kiểu nguyên thủy
+ Lớp bao giá trị kiểu nguyên thủy
+ Boxing/Unboxing
+ Chuyển đổi kiểu dữ liệu
+ Toán tử và biểu thức
+ Lệnh if 
+ Lệnh switch case
+ Tổ chức một chương trình
học lập trình java miễn phí mới nhất

Vậy là bài 2 hướng dẫn Lập trình java - bài 2: Kiểu, toán tử, lệnh if, switch của "viết mã bug" đã kết thúc. Chúc các bạn thành công!












ĐĂNG NHẬN XÉT

Previous Post Next Post