Biểu thức boolean là bất kỳ biểu thức nào đánh giá hoặc trả về giá trị boolean.
// These expressions all evaluate to a boolean value.
// Therefore their values can be stored in boolean variables.
bool a = (2 > 1);
bool b = a && true;
bool c = !false || (7 < 8);
Kiểu bool
dữ liệu có thể là một trong hai true
hoặc false
và dựa trên khái niệm rằng tính hợp lệ của tất cả các câu lệnh logic phải là đúng hoặc sai.
Boolean mã hóa khoa học logic vào máy tính, cho phép suy luận logic trong các chương trình. Theo nghĩa rộng, máy tính có thể mã hóa tính trung thực hay sai lệch của một số tuyên bố nhất định và dựa trên thông tin đó, hoàn toàn thay đổi hoạt động của chương trình.
bool skyIsBlue = true;
bool penguinsCanFly = false;
Console.WriteLine($"True or false, is the sky blue? {skyIsBlue}.");
// This simple program illustrates how booleans are declared. However, the real power of booleans requires additional programming constructs such as conditionals.
Toán tử logic nhận các biểu thức boolean làm đầu vào và trả về một giá trị boolean.
Toán tử &&
nhận hai biểu thức boolean và true
chỉ trả về nếu cả hai đều đánh giá đến true
.
Toán tử ||
nhận hai biểu thức boolean và trả về true
nếu một trong hai có giá trị true
.
Toán tử !
nhận một biểu thức boolean và trả về giá trị ngược lại.
// These variables equal true.
bool a = true && true;
bool b = false || true;
bool c = !false;
// These variables equal false.
bool d = true && false;
bool e = false || false;
bool f = !true;
Một toán tử so sánh , như tên của nó, so sánh hai biểu thức và trả về một trong hai true
hoặc false
tùy thuộc vào kết quả của phép so sánh. Ví dụ: nếu chúng tôi so sánh hai int
giá trị, chúng tôi có thể kiểm tra xem một số lớn hơn số kia hay cả hai số đều bằng nhau. Tương tự như vậy, chúng ta có thể kiểm tra một cái xem có string
bình đẳng với cái khác không string
.
int x = 5;
Console.WriteLine(x < 6); // Prints "True" because 5 is less than 6.
Console.WriteLine(x > 8); // Prints "False" because 5 is not greater than 8.
string foo = "foo";
Console.WriteLine(foo == "bar"); // Prints "False" because "foo" does not equal "bar".
Bảng sự thật là một cách để hình dung logic boolean. Vì boolean chỉ có hai giá trị khả thi, điều đó có nghĩa là chúng ta có thể liệt kê gọn trong bảng tất cả các cặp đầu vào và đầu ra có thể có cho toán tử boolean đơn phân và nhị phân.
Hình ảnh dưới đây cung cấp các bảng sự thật cho các toán tử VÀ , HOẶC và KHÔNG . Đối với mỗi hàng, cột cuối cùng đại diện cho đầu ra cho rằng các cột khác đã được cung cấp làm đầu vào cho toán tử tương ứng.
Câu lệnh điều kiện hoặc cấu trúc điều khiển có điều kiện cho phép một chương trình có các hành vi khác nhau tùy thuộc vào các điều kiện nhất định được đáp ứng.
Về mặt trực giác, điều này bắt chước cách con người đưa ra các quyết định đơn giản và hành động theo chúng. Ví dụ, lý luận về việc có nên đi ra ngoài hay không có thể như sau:
Chúng tôi có thể tiếp tục thêm các mệnh đề để làm cho lập luận của chúng tôi trở nên phức tạp hơn, chẳng hạn như "Nếu trời nắng thì hãy mặc kem chống nắng".
Trong lập trình, luồng điều khiển là thứ tự thực hiện các câu lệnh và lệnh. Người lập trình có thể thay đổi luồng điều khiển của chương trình bằng cách sử dụng các cấu trúc điều khiển như điều kiện.
Khả năng thay đổi luồng điều khiển của chương trình rất mạnh mẽ, vì nó cho phép chúng tôi điều chỉnh hành vi của chương trình đang chạy tùy thuộc vào trạng thái của chương trình. Ví dụ: giả sử một người dùng đang sử dụng ứng dụng ngân hàng và muốn rút 500 đô la. Chúng tôi chắc chắn muốn ứng dụng hoạt động khác nhau tùy thuộc vào việc người dùng có $ 20 hay $ 1000 trong tài khoản ngân hàng của họ!
Trong C #, câu lệnh if thực thi một khối mã dựa trên việc biểu thức boolean được cung cấp trong dấu ngoặc đơn có phải là true
hoặc không false
.
Nếu biểu thức là true
khối mã bên trong dấu ngoặc nhọn {}
, sẽ được thực thi. Nếu không, khối sẽ bị bỏ qua.
if (true) {
// This code is executed.
Console.WriteLine("Hello User!");
}
if (false) {
// This code is skipped.
Console.WriteLine("This won't be seen :(");
}
Một trong những công dụng của break
từ khóa trong C # là thoát khỏi switch
/ case
blocks và tiếp tục thực thi chương trình sau switch
khối mã. Trong C #, mỗi case
khối mã bên trong một switch
câu lệnh cần được thoát bằng break
từ khóa (hoặc một số câu lệnh nhảy khác), nếu không chương trình sẽ không biên dịch. Nó sẽ được gọi sau khi tất cả các hướng dẫn cụ thể cho cụ thể đó case
đã được thực thi.
string color = "blue";
switch (color) {
case "red":
Console.WriteLine("I don't like that color.");
break;
case "blue":
Console.WriteLine("I like that color.");
break;
default:
Console.WriteLine("I feel ambivalent about that color.");
break;
}
// Regardless of where the break statement is in the above switch statement,
// breaking will resume the program execution here.
Console.WriteLine("- Steve");
Trong C #, toán tử bậc ba là một cú pháp đặc biệt có dạng condition ? expression1 : expression2
:.
Nó nhận một điều kiện boolean và hai biểu thức làm đầu vào. Không giống như một if
câu lệnh, toán tử bậc ba chính nó là một biểu thức. Nó đánh giá biểu thức đầu vào đầu tiên hoặc biểu thức đầu vào thứ hai tùy thuộc vào điều kiện true
tương false
ứng.
bool isRaining = true;
// This sets umbrellaOrNot to "Umbrella" if isRaining is true,
// and "No Umbrella" if isRaining is false.
string umbrellaOrNot = isRaining ? "Umbrella" : "No Umbrella";
// "Umbrella"
Console.WriteLine(umbrellaOrNot);
Tiếp else
theo là dấu ngoặc nhọn, {}
chứa một khối mã, được gọi là else
mệnh đề. else
mệnh đề luôn phải được đặt trước một if
câu lệnh.
Khối bên trong dấu ngoặc nhọn sẽ chỉ chạy nếu biểu thức trong if
điều kiện đi kèm là false
. Nó hữu ích cho việc viết mã chỉ chạy nếu mã bên trong if
câu lệnh không được thực thi.
if (true) {
// This block will run.
Console.WriteLine("Seen!");
} else {
// This will not run.
Console.WriteLine("Not seen!");
}
if (false) {
// Conversely, this will not run.
Console.WriteLine("Not seen!");
} else {
// Instead, this will run.
Console.WriteLine("Seen!");
}
Một mẫu phổ biến khi viết nhiều if
và else
câu lệnh là có một else
khối chứa một if
câu lệnh lồng nhau khác, có thể chứa một câu lệnh khác else
, v.v. Một cách tốt hơn để thể hiện mẫu này trong C # là sử dụng các else if
câu lệnh. Điều kiện đầu tiên được đánh giá là true
sẽ chạy khối mã liên kết của nó. Nếu không có true
, thì khối tùy chọn else
sẽ chạy nếu nó tồn tại.
int x = 100, y = 80;
if (x > y)
{
Console.WriteLine("x is greater than y");
}
else if (x < y)
{
Console.WriteLine("x is less than y");
}
else
{
Console.WriteLine("x is equal to y");
}
Câu switch
lệnh là một cấu trúc luồng điều khiển đánh giá một biểu thức và quyết định khối mã nào sẽ chạy bằng cách cố gắng khớp kết quả của biểu thức với từng biểu thức case
. Nói chung, một khối mã được thực thi khi giá trị cho một case
bằng biểu thức được đánh giá, tức là khi ==
giữa hai giá trị trả về true
. switch
câu lệnh thường được sử dụng để thay thế if else
cấu trúc khi tất cả các điều kiện kiểm tra sự bằng nhau trên một giá trị.
// The expression to match goes in parentheses.
switch (fruit) {
case "Banana":
// If fruit == "Banana", this block will run.
Console.WriteLine("Peel first.");
break;
case "Durian":
Console.WriteLine("Strong smell.");
break;
default:
// The default block will catch expressions that did not match any above.
Console.WriteLine("Nothing to say.");
break;
}
// The switch statement above is equivalent to this:
if (fruit == "Banana") {
Console.WriteLine("Peel first.");
} else if (fruit == "Durian") {
Console.WriteLine("Strong smell.");
} else {
Console.WriteLine("Nothing to say.");
}
Đăng nhận xét