【发布时间】:2017-09-08 00:06:17
【问题描述】:
我目前正在从 Apple 的 iBooks 中快速学习可选选项,并且在练习时遇到了一些问题。这些是方向:
假设您正在创建一个用于购物的应用。编写一个函数,该函数将获取要购买的商品的名称并返回该商品的成本。在函数的主体中,通过在字典 stock 中访问该项目来检查它是否有库存。如果是,则通过在字典价格中访问它来返回项目的价格。如果商品缺货,则返回零。调用该函数并传入一个存在于以下字典中的字符串。打印返回值。
var prices = ["Chips": 2.99, "Donuts": 1.89, "Juice": 3.99, "Apple": 0.50, "Banana": 0.25, "Broccoli": 0.99]
var stock = ["Chips": 4, "Donuts": 0, "Juice": 12, "Apple": 6, "Banana": 6, "Broccoli": 3]
func costOfItem(item: String) -> Double? {
var names = stock.keys
var amount = stock.values
for (names, amount) in stock {
if amount == 0 {
return nil
}
}
}
costOfItem(item: "Chips")
我真的不知道从这里去哪里。在本书中,Optionals 对我来说是一个非常令人困惑的单元。我知道我必须返回一个价格,这将是双倍的。我只是不知道如何进入价格字典并推断并返回它。我尝试了一些在线搜索的方法(使用 .contains 方法,比较字符串),但我得到的都是错误。有人可以指导我完成这个练习吗?我真的很想了解这个话题。
【问题讨论】:
标签: swift function dictionary optional