Câu lệnh rẽ nhánh (if else) trong Java
1. Câu lệnh if
Câu lệnh if là câu lệnh cơ bản nhất trong tất cả các câu lệnh điều khiển (control flow statements). Nó nói với chương trình của bạn để thực hiện một phần mã nhất định chỉ khi một điều kiện được đánh giá là đúng (true).
Dưới đây là cấu trúc của câu lệnh if:
// condition: Điều kiện cần kiểm tra.
if (condition) {
// Làm gì đó tại đây nếu 'condition' là đúng.
}
Hình phía trên minh họa luồng đi (flow) của ứng dụng khi nó bắt gặp một câu lệnh if.
- Chương trình kiểm tra điều kiện (condition).
- Nếu điều kiện đúng (true), các đoạn mã (code) trong khối lệnh của if sẽ được thực thi (execute). Sau đó nó tiếp tục thực thi các mã phía dưới của khối lệnh if.
- Nếu điều kiện sai (false), chương trình sẽ bỏ qua các đoạn mã trong khối lệnh của if, và thực thi các đoạn mã phía dưới khối lệnh if.
Ví dụ:
IfExample.java
package org.o7planning.tutorial.javabasic.controlflow;
public class IfExample {
public static void main(String[] args) {
// Khai báo một biến, đại diện cho tuổi của bạn
int age = 30;
System.out.println("Your age: " + age);
// Điều kiện (condition) cần kiểm tra là 'age > 20'
if (age > 20) {
System.out.println("Okey!");
System.out.println("Age is greater than 20");
}
// Các đoạn mã phía dưới khối 'if'.
System.out.println("Done!");
}
}
Chạy ví dụ:
Your age: 30
Okey!
Age is greater than 20
Done!
2. Câu lệnh if - else
Lệnh if-else cũng được sử dụng để kiểm tra một điều kiện. Nó sẽ thực thi (execute) khối lệnh if nếu điều kiện là đúng, nếu điều kiện sai thì khối lệnh else sẽ được thực thi.
** if - else **
if( condition ) {
// Làm gì đó tại đây
}
// Ngược lại
else {
// Làm gì đó tại đây
}
Ví dụ:
IfElseExample.java
package org.o7planning.tutorial.javabasic.controlflow;
public class IfElseExample {
public static void main(String[] args) {
// Khai báo một biến, đại diện cho tuổi của bạn
int age = 15;
System.out.println("Your age: " + age);
// Điều kiện (condition) cần kiểm tra là 'age > 18'
if (age >= 18) {
System.out.println("Okey!");
System.out.println("You are accepted!");
} else {
System.out.println("Sorry!");
System.out.println("Age is less than 18");
}
// Các đoạn mã phía sau khối 'if' và khối 'else'.
System.out.println("Done!");
}
}
Chạy ví dụ:
Your age: 15
Sorry!
Age is less than 18
Done!
3. Câu lệnh if - else if - else
Cấu trúc của một câu lệnh if - else if - else là:
if(condition 1) {
// Làm gì đó tại đây
} else if(condition 2) {
// Làm gì đó tại đây
} else if(condition 3) {
// Làm gì đó tại đây
}
// Ngược lại
else {
// Làm gì đó tại đây
}
Tạo class ElseIfExample1:
ElseIfExample1.java
package org.o7planning.tutorial.javabasic.controlflow;
public class ElseIfExample1 {
public static void main(String[] args) {
// Khai báo một số kiểu int (Số nguyên 32 bit)
// Đại diện cho điểm thi (score) của bạn
int score = 70;
System.out.println("Your score =" + score);
// Nếu điểm số nhỏ hơn 50
if (score < 50) {
System.out.println("You are not pass");
}
// Ngược lại nếu score lớn hơn hoặc bằng 50 và nhỏ hơn 80.
else if (score >= 50 && score < 80) {
System.out.println("You are pass");
}
// Trường hợp còn lại (Nghĩa là lớn hơn hoặc bằng 80)
else {
System.out.println("You are pass, good student!");
}
}
}
Kết quả chạy class ElseIfExample1:
Your score =70
You are pass
Thay đổi giá trị của biến "score" trong ví dụ trên và chạy lại class ElseIfExample1:
int score = 20;
Your score =20
You are not pass
4. Giá trị boolean
boolean là một kiểu dữ liệu, nó chỉ có 2 giá trị true hoặc false (Đúng hoặc sai).
Tạo lớp BooleanExample:
BooleanExample.java
package org.o7planning.tutorial.javabasic.controlflow;
public class BooleanExample {
public static void main(String[] args) {
// Khai báo một biến kiểu boolean
boolean value = true;
// Nếu value là true
if (value == true) {
System.out.println("It's true");
}
// Ngược lại
else {
System.out.println("It's false");
}
// Với kiểu boolean, bạn cũng có thể viết
// With boolean type, you can also write
if (value) {
System.out.println("It's true");
}
// Ngược lại
else {
System.out.println("It's false");
}
}
}
It's true
It's true
5. Các toán tử tham gia vào biểu thức điều kiện
Dưới đây là danh sách các toán tử, nó thường đươc sử dụng trong một biểu thức điều kiện (conditional expression).
- > Lớn hơn
- < Nhỏ hơn
- >= Lớn hơn hoặc bằng
- <= Nhỏ hơn hặc bằng
- && Và
- || hoặc
- == So sánh bằng
- != So sánh khác nhau
- ! Phủ định
Ví dụ:
ElseIfExample2.java
package org.o7planning.tutorial.javabasic.controlflow;
public class ElseIfExample2 {
public static void main(String[] args) {
// Khai báo một biến kiểu int, đại diện cho tuổi của bạn.
int age = 20;
// Kiểm tra tuổi nhỏ hơn hoặc bằng 17
if (age <= 17) {
System.out.println("You are 17 or younger");
}
// Kiểm tra tuổi bằng 18
else if (age == 18) {
System.out.println("You are 18 year old");
}
// Kiểm tra tuổi lớn hơn 18 và nhỏ hơn 40
else if (age > 18 && age < 40) {
System.out.println("You are between 19 and 39");
}
// Trường hợp còn lại (Lớn hơn hoặc bằng 40)
else {
// Một lệnh 'if' lồng bên trong.
// Kiểm tra tuổi khác 50.
if (age != 50) {
System.out.println("You are not 50 year old");
}
// Lệnh phủ định tuổi bằng 50, nghĩa là khác 50.
if (!(age == 50)) {
System.out.println("You are not 50 year old");
}
// Nếu tuổi là 60 hoặc 70
if (age == 60 || age == 70) {
System.out.println("You are 60 or 70 year old");
}
}
}
}
Chạy ví dụ:
You are between 19 and 39
Bạn có thể thay đổi giá trị của biến 'age' và chạy lớp ElseIfExample2 và xem các kết quả
Java cơ bản
- Tùy biến trình biên dịch java xử lý Annotation của bạn (Annotation Processing Tool)
- Lập trình Java theo nhóm sử dụng Eclipse và SVN
- Hướng dẫn và ví dụ Java WeakReference
- Hướng dẫn và ví dụ Java PhantomReference
- Hướng dẫn nén và giải nén trong Java
- Cấu hình Eclipse để sử dụng JDK thay vì JRE
- Phương thức String.format() và printf() trong Java
- Cú pháp và các tính năng mới trong Java 5
- Cú pháp và các tính năng mới trong Java 8
- Hướng dẫn sử dụng biểu thức chính quy trong Java
- Hướng dẫn lập trình đa luồng trong Java - Java Multithreading
- Thư viện điều khiển các loại cơ sở dữ liệu khác nhau trong Java
- Hướng dẫn sử dụng Java JDBC kết nối cơ sở dữ liệu
- Lấy các giá trị của các cột tự động tăng khi Insert một bản ghi sử dụng JDBC
- Hướng dẫn và ví dụ Java Stream
- Functional Interface trong Java
- Giới thiệu về Raspberry Pi
- Hướng dẫn và ví dụ Java Predicate
- Abstract class và Interface trong Java
- Access modifier trong Java
- Hướng dẫn và ví dụ Java Enum
- Hướng dẫn và ví dụ Java Annotation
- So sánh và sắp xếp trong Java
- Hướng dẫn và ví dụ Java String, StringBuffer và StringBuilder
- Hướng dẫn xử lý ngoại lệ trong Java - Java Exception Handling
- Hướng dẫn và ví dụ Java Generics
- Thao tác với tập tin và thư mục trong Java
- Hướng dẫn và ví dụ Java BiPredicate
- Hướng dẫn và ví dụ Java Consumer
- Hướng dẫn và ví dụ Java BiConsumer
- Bắt đầu với Java cần những gì?
- Lịch sử của Java và sự khác biệt giữa Oracle JDK và OpenJDK
- Cài đặt Java trên Windows
- Cài đặt Java trên Ubuntu
- Cài đặt OpenJDK trên Ubuntu
- Cài đặt Eclipse
- Cài đặt Eclipse trên Ubuntu
- Học nhanh Java cho người mới bắt đầu
- Lịch sử của bit và byte trong khoa học máy tính
- Các kiểu dữ liệu trong Java
- Các toán tử Bitwise
- Câu lệnh rẽ nhánh (if else) trong Java
- Câu lệnh rẽ nhánh switch trong Java
- Vòng lặp trong Java
- Mảng (Array) trong Java
- JDK Javadoc định dạng CHM
- Thừa kế và đa hình trong Java
- Hướng dẫn và ví dụ Java Function
- Hướng dẫn và ví dụ Java BiFunction
- Ví dụ về Java encoding và decoding sử dụng Apache Base64
- Hướng dẫn và ví dụ Java Reflection
- Hướng dẫn gọi phương thức từ xa với Java RMI
- Hướng dẫn lập trình Java Socket
- Các nền tảng nào bạn nên chọn để lập trình ứng dụng Java Desktop?
- Hướng dẫn và ví dụ Java Commons IO
- Hướng dẫn và ví dụ Java Commons Email
- Hướng dẫn và ví dụ Java Commons Logging
- Tìm hiểu về Java System.identityHashCode, Object.hashCode và Object.equals
- Hướng dẫn và ví dụ Java SoftReference
- Hướng dẫn và ví dụ Java Supplier
- Lập trình Java hướng khía cạnh với AspectJ (AOP)
Show More
- Hướng dẫn lập trình Java Servlet/JSP
- Các hướng dẫn Java Collections Framework
- Java API cho HTML & XML
- Các hướng dẫn Java IO
- Các hướng dẫn Java Date Time
- Các hướng dẫn Spring Boot
- Các hướng dẫn Maven
- Các hướng dẫn Gradle
- Các hướng dẫn Java Web Services
- Các hướng dẫn lập trình Java SWT
- Các hướng dẫn lập trình JavaFX
- Các hướng dẫn Java Oracle ADF
- Các hướng dẫn Struts2 Framework
- Các hướng dẫn Spring Cloud