Cách Hoạt động Của Các Toán Tử Logic Trong Java - Deft Blog
Có thể bạn quan tâm
Mục lục
- 1 Cơ chế hoạt động
- 2 Áp dụng
Toán tử logic hầu là một trong những phần đầu tiên mà bất kỳ lập trình viên nào mới học lập trình đều đã học qua. Thế nhưng ẩn chứa bên trong nó vẫn còn khá nhiều điều thú vị mà chắc hẳn các bạn sẽ không ngờ đến.
Cơ chế hoạt động
Khi bạn kết hợp nhiều toán tử && hoặc || lại với nhau như thế này
A && B && C && DHoặc
A || B || C || DThì các toán tử logic ở trên sẽ thực hiện theo thứ tự từ trái sang phải và tuân theo quy tắc
- Trong loạt điều kiện && kết hợp nếu có một điều kiện false thì kết quả trả về false, các điều kiện còn lại phía bên phải sẽ không được thực hiện.
- Trong loạt điều kiện || nếu có một điều kiện trả về true thì kết quả trả về là true, các điều kiện còn lại phía bên phải sẽ không được thực hiện.
Chúng ta có 3 điều kiện
- student != null
- student.getScore() > 5
- student.getName().startsWith(“H”)
Với student mình đã khởi tạo ở trên, điều kiện (1) sẽ true, (2) false (score = 3), lúc này chương trình sẽ tiến hành trả về false mà không thực hiện tiếp tục (3).
Tương tự đối với ||, chúng ta xét ví dụ sauP
Kết quả trả về là true mặc cho student.getName().startsWith(“Z”) là một điều kiện false.
Áp dụng
Dựa vào tính chất ở phần trên mà chúng ta có thể viết các câu điều kiện ngắn gọn hơn một xíu nè.
Ví dụ mình có một hàm isPass() nhận tham số là Student, hàm này sẽ trả về true nếu score >= 5, false nếu ngược lại. Thế nhưng để chắc chắn thì mình sẽ phải kiểm tra thêm Student truyền vào phải khác null để tránh trường hợp xảy ta NullPointerException.
public boolean isPass(Student student) { if (student != null) { if (student.getScore() >=5) { return true; } } return false; }Code trên là ổn chúng ta phải kiểm tra khác null trước rồi mới kiểm tra score. Thế mình viết lại thế này các bạn đoán xem có sai không nhé.
public boolean isPass(Student student) { if (student != null && student.getScore() >= 5) { return true; } return false; }Mình đã gộp 2 điều kiện lại thành một trong nó có vẽ đẹp thế nhưng mà nó có bị nullPointer không nhỉ?
Trả lời: Không nhé, theo thứ tự nó sẽ kiểm tra student != null, nếu student có giá trị null thì hàm sẽ tiến hành trả về false mà không cần kiểm tra điều kiện student.getScore >= 5. Vậy nên chúng ta sẽ không ăn exception nullpointer đâu nhé.
Những điểm nhỏ này có thể giúp code chúng ta đẹp hơn xíu và giảm thiểu các điều kiện lồng rối mắt 😆
Từ khóa » Toán Tử Logic Là Gì
-
Toán Tử Logic Trong Java - Hướng Dẫn Java - Huong Dan Java
-
Toán Tử Logic, Toán Tử Trên Bit Và Toán Tử Gán Trong C++ - Góc Học IT
-
Toán Tử Logic Trong C Và Giá Trị True False
-
Toán Tử Trong Java - Học Java Miễn Phí Hay Nhất - VietTuts
-
Toán Tử Logic Trong Javascript - KungFu Tech
-
Toán Logic Là Gì? Hệ Thống Toán Logic
-
Toán Tử Logic Trong JavaScript
-
Toán Tử - Độ Ưu Tiên Và Trật Tự Kết Hợp — Modern C++ - STDIO
-
Toán Tử Quan Hệ, Logic, Bitwise, Misc Và độ ưu Tiên Toán Tử Trong C++
-
Toán Tử So Sánh Và Toán Tử Logic Trong JavaScript - Web Cơ Bản
-
Cổng Logic – Wikipedia Tiếng Việt
-
Độ ưu Tiên đối Với Các Toán Tử Logic Là: - Trắc Nghiệm Online
-
Từ điển Việt Anh "toán Tử Lôgic" - Là Gì?
-
Toán Tử Logic Trong C++ Và Giá Trị True False - TBDN
-
Toán Tử So Sánh Logic Và Các Câu Lệnh If Switch Trong C# .NET
-
Các Toán Tử Logic Của Excel: Bằng, Không Bằng, Lớn Hơn, Nhỏ Hơn
-
Sự Khác Biệt Giữa & Và && - Công Nghệ - 2022 - Strephonsays
-
Sự Khác Biệt Giữa & Và && (Công Nghệ) - Sawakinome
-
Review Toán Tử Là Gì? Các Toán Tử Trong C, C++ Thường Gặp