If và else
Thuộc phần Nền tảng cơ bản trong hành trình Solidity của Coddy. Bài học 18 trên 53.
Câu lệnh if chỉ chạy khối lệnh khi điều kiện đúng. Thêm else để cung cấp nhánh thay thế. Điều kiện nằm trong dấu ngoặc đơn, còn mỗi nhánh dùng dấu ngoặc nhọn. Chỉ một trong hai nhánh này chạy.
Các câu lệnh trong đoạn trích này chạy bên trong hàm main được cung cấp.
uint256 stock = 8;
if (stock > 0) {
console.log("available");
} else {
console.log("empty");
}Số lượng hàng tồn kho lớn hơn 0 nên nhánh đầu tiên in ra thông báo còn hàng. Nếu số lượng hàng tồn kho bằng 0, nhánh else sẽ in ra thông báo hết hàng. Cấu trúc rẽ nhánh biến một quyết định đúng hoặc sai thành các hành động khác nhau.
Chỉ một nhánh trong cặp if/else được chạy.
Thử thách
DễIn ra open khi remaining lớn hơn không; nếu không thì in ra full.
Các bài kiểm tra truyền đối số cho main theo thứ tự này: uint256 remaining. Mỗi bài kiểm tra bắt đầu với trạng thái hợp đồng mới.
Dùng console.log cho đầu ra được yêu cầu. Chỉ in các giá trị được yêu cầu, mỗi giá trị trên một dòng, không thêm nhãn nào trừ khi đề bài yêu cầu.
Tự làm thử
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 remaining) external view {
// Viết lời giải của bạn ở đây.
}
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Nền tảng cơ bản
Tự luyện tập: Playground Solidity