全部清除
本课属于 Coddy Kotlin 学习旅程的“基础知识”单元。第 89 课,共 93 课。
挑战
中等在上一课中,你实现了“总计和平均值”功能。现在,为选项 4 实现“全部清除”功能。
修改程序以处理选项 4:
- 从
expenses列表中清除所有费用 - 输出
All expenses cleared!
其他选项应继续像以前一样正常工作:
- 选项
1:添加费用 - 选项
2:查看所有费用 - 选项
3:总计和平均值 - 选项
5:输出Goodbye!并退出 - 无效选项:输出
Invalid option
输入格式:
菜单选项和费用金额均为字符串。
输出格式:
先显示菜单,然后根据每项操作给出相应的响应。
示例:
如果输入依次为 1、50.0、1、25.0、2、4、2 和 5,输出应为:
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Enter expense amount:
Expense added!
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Enter expense amount:
Expense added!
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Your expenses:
- $50.0
- $25.0
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
All expenses cleared!
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
No expenses recorded.
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Goodbye!提示:对可变列表使用 clear() 方法可以移除所有元素。
亲手试试
fun main() {
val expenses = mutableListOf<Double>()
while (true) {
println("--- Expense Tracker ---")
println("1. Add Expense")
println("2. View All Expenses")
println("3. Total and Average")
println("4. Clear All")
println("5. Exit")
println("Choose an option:")
val choice = readLine()
if (choice == "1") {
println("Enter expense amount:")
val amount = readLine()!!.toDouble()
expenses.add(amount)
println("Expense added!")
} else if (choice == "2") {
if (expenses.isEmpty()) {
println("No expenses recorded.")
} else {
println("Your expenses:")
for (expense in expenses) {
println("- \$$expense")
}
}
} else if (choice == "3") {
if (expenses.isEmpty()) {
println("No expenses recorded.")
} else {
val total = expenses.sum()
val average = total / expenses.size
println("Total: \$$total")
println("Average: \$$average")
}
} else if (choice == "5") {
println("Goodbye!")
break
} else {
println("Invalid option")
}
}
}基础知识中的所有课
自己练习: Kotlin 在线编辑器