条件运算符
本课属于 Coddy Dart 学习旅程的“基础知识”单元。第 30 课,共 94 课。
条件运算符(?:)提供了一种简洁的方式,可以在一行中编写 if-else 语句:
condition ? expressionIfTrue : expressionIfFalse示例:
void main() {
int age = 20;
String status = age >= 18 ? 'Adult' : 'Minor';
print(status);
}输出:Adult
它适用于不同的数据类型,非常适合简单的条件赋值。
挑战
简单创建一个程序,使用条件运算符(?:)判断玩家在游戏中是否有足够的分数来升级:
- 声明一个值为 750 的整数变量
playerScore - 声明一个值为 500 的整数变量
levelUpThreshold - 使用条件运算符创建一条字符串消息,内容为以下二者之一:
- 如果玩家的分数大于或等于阈值,则为"Level up!"
- 如果玩家的分数小于阈值,则为"Keep trying!"
- 将这条消息存储在名为
message的字符串变量中 - 按照以下格式输出玩家的分数:
Player score: 750 - 输出这条消息
- 将玩家的分数更新为 450
- 再次使用条件运算符,根据新的分数更新这条消息
- 按照以下格式输出更新后的玩家分数:
Player score: 450 - 输出更新后的消息
你的输出应与预期格式完全一致。
亲手试试
void main() {
// 在这里声明你的变量
// 将每个零替换为任务要求的值
int playerScore = 0;
int levelUpThreshold = 0;
// 使用条件运算符生成第一条消息
// 将两处空文本替换为任务要求的消息
String message = playerScore >= levelUpThreshold ? "" : "";
// 输出玩家得分和消息
print("Player score: $playerScore");
print(message);
// 更新玩家得分
// 将零替换为任务要求的更新后得分
playerScore = 0;
// 使用条件运算符更新消息
message = playerScore >= levelUpThreshold ? "" : "";
// 输出更新后的玩家得分和消息
print("Player score: $playerScore");
print(message);
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Dart 在线编译器