Trong hướng dẫn này, bạn sẽ tìm hiểu về toán tử bậc ba và cách sử dụng nó trong Java với sự trợ giúp của các ví dụ.
Trong Java, một toán tử bậc ba có thể được sử dụng để thay thế câu lệnh if… else trong một số trường hợp nhất định. Trước khi bạn tìm hiểu về toán tử bậc ba, hãy đảm bảo rằng bạn truy cập câu lệnh Java if… else.
Toán tử bậc ba trong Java
Toán tử bậc ba đánh giá điều kiện thử nghiệm và thực thi một khối mã dựa trên kết quả của điều kiện.
Cú pháp của nó là:
condition ? expression1 : expression2;
Ở đây, điều kiện được đánh giá và
- nếu điều kiện là
true
, biểu thức1 được thực thi. - Và, nếu điều kiện là
false
, biểu thức 2 được thực thi.
Toán tử bậc ba nhận 3 toán hạng (điều kiện, biểu thức1 và biểu thức2). Do đó, tên toán tử bậc ba .
Ví dụ: Toán tử bậc ba của Java
import java.util.Scanner; class Main ( public static void main(String() args) ( // take input from users Scanner input = new Scanner(System.in); System.out.println("Enter your marks: "); double marks = input.nextDouble(); // ternary operator checks if // marks is greater than 40 String result = (marks> 40) ? "pass" : "fail"; System.out.println("You " + result + " the exam."); input.close(); ) )
Đầu ra 1
Nhập điểm của bạn: 75 Bạn vượt qua kỳ thi.
Giả sử người dùng nhập 75 . Sau đó, điều kiện marks> 40
đánh giá thành true
. Do đó, truyền biểu thức đầu tiên được gán cho kết quả.
Đầu ra 2
Nhập điểm của bạn: 24 Bạn trượt kỳ thi.
Bây giờ, giả sử người dùng nhập 24 . Sau đó, điều kiện marks> 40
đánh giá thành false
. Do đó, biểu thức thứ hai fail được gán cho kết quả.
Khi nào thì sử dụng Toán tử bậc ba?
Trong Java, toán tử bậc ba có thể được sử dụng để thay thế một số kiểu if… else
câu lệnh nhất định . Ví dụ,
Bạn có thể thay thế mã này
class Main ( public static void main(String() args) ( // create a variable int number = 24; if(number> 0) ( System.out.println("Positive Number"); ) else ( System.out.println("Negative Number"); ) ) )
với
class Main ( public static void main(String() args) ( // create a variable int number = 24; String result = (number> 0) ? "Positive Number" : "Negative Number"; System.out.println(result); ) )
Đầu ra
Số dương
Ở đây, cả hai chương trình đều cho kết quả đầu ra như nhau. Tuy nhiên, việc sử dụng toán tử bậc ba làm cho mã của chúng ta dễ đọc và sạch sẽ hơn.
Lưu ý : Bạn chỉ nên sử dụng toán tử bậc ba nếu câu lệnh kết quả ngắn.
Toán tử bậc ba lồng nhau
Cũng có thể sử dụng một toán tử bậc ba bên trong một toán tử bậc ba khác. Nó được gọi là toán tử bậc ba lồng nhau trong Java.
Đây là một chương trình để tìm số lớn nhất trong 3 số bằng cách sử dụng toán tử bậc ba lồng nhau.
class Main ( public static void main(String() args) ( // create a variable int n1 = 2, n2 = 9, n3 = -11; // nested ternary operator // to find the largest number int largest = (n1>= n2) ? ((n1>= n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3); System.out.println("Largest Number: " + largest); ) )
Đầu ra
Số lớn nhất: 9
Trong ví dụ trên, lưu ý việc sử dụng toán tử bậc ba,
(n1>= n2) ? ((n1>=n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3);
Đây,
- (n1> = n2) - điều kiện kiểm tra đầu tiên kiểm tra xem n1 có lớn hơn n2 không
- (n1> = n3) - điều kiện kiểm tra thứ hai được thực hiện nếu điều kiện đầu tiên là
true
- (n2> = n3) - điều kiện kiểm tra thứ ba được thực hiện nếu điều kiện đầu tiên là
false
Lưu ý : Không nên sử dụng các toán tử bậc ba lồng nhau. Điều này là do nó làm cho mã của chúng ta phức tạp hơn.