gpt4 book ai didi

swift - 如何在枚举 Swift 3.0 中访问和创建函数

转载 作者:搜寻专家 更新时间:2023-11-01 06:36:16 25 4
gpt4 key购买 nike

我是编程新手,我必须制作一个用于搜索一个项目,如果找到该项目,则必须打印食谱。示例:

enum Grocery  {
case Wine
case Pork
case Onion
}
enum RecipePorkWithWine: String {
case Wine = "2 Glasses"
case Pork = "4 Pieces"
case Onion= "2 pcs"

如何制作一个在食谱中搜索的函数,如果找到该项目,则应打印食谱。

最佳答案

定义杂货店,收据

enum Grocery  {
case wine(num: Int)
case pork(num: Int)
case onion(num: Int)

func printRecipe() {
switch self {
case .wine(let num): print("\(num) Glasses")
case .pork(let num): print("\(num) Pieces")
case .onion(let num): print("\(num) pcs")
}
}
}

class Receipt {
var grocerys: [Grocery] = []

func add(grocery: Grocery) {
grocerys.append(grocery)
}

func printRecipe() {
grocerys.forEach { $0.printRecipe() }
}
}

用例

Grocery.onion(num: 10).printRecipe()

Grocery.pork(num: 2).printRecipe()

使用收据模型时

let receipt = Receipt()
receipt.add(grocery: .onion(num: 2))
receipt.add(grocery: .pork(num: 4))
receipt.add(grocery: .wine(num: 2))
receipt.printRecipe()

输出

2 pcs
4 Pieces
2 Glasses

关于swift - 如何在枚举 Swift 3.0 中访问和创建函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41200453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com