gpt4 book ai didi

swift : if statement with multiple text

转载 作者:搜寻专家 更新时间:2023-11-01 07:05:32 24 4
gpt4 key购买 nike

我的文字问题:

我有三个数组,一个是汽车公司名称 ["Toyota","Audi","Nissan"] ,另一个是汽车模块编号 ["2008","2009","2010","2011", “2012”],最后一个有车名[“Camry”,“Landcruser”]。

我想要一个简短的清理方法来执行以下操作:

如果输入 (1) 是 ["Nissan"],输入 (2) 是 ["camry"],输入 (3) 是"2008"until "2011" {result.text = "一些文本"

我做的一切都是对的,但我的问题出在这段代码中[ "2008"until "2011"] 我如何用 if 做到这一点?

这是我的代码:

if (carCompass.text  == "Nissan") && (carTpass.text  == "camry") && (carMpass.text  == "2008") || (carMpass.text  == "2009") || 
(carMpass.text == "2010") || (carMpass.text == "2011") ||
(carMpass.text == "2012") && (calc_color.backgroundColor == UIColor(red: 0.2078, green: 0.4471, blue: 0.349, alpha: 1.0)) {

result.text = " \(landcruzer08_18)" + "L" + "\(landcruzer08_18*1.37) SAR"
}

它工作正常,但我认为它不干净或不专业

最佳答案

将您的汽车数据重构为正确类型的结构(例如,将年份作为 Int,而不是 String),并使用范围操作:

if car.make == "Nissan", car.model == "Camry", 2008...2011 ~= car.year {
result.text = " \(landcruzer08_18)L\(landcruzer08_18*1.37) SAR"
}

如果需要从多个选项中选择一个,可以使用开关:

switch (car.make, car.model, car.year) {
case ("Nissan", "Camry", 2008...2011):
result.text = " \(landcruzer08_18)L\(landcruzer08_18*1.37) SAR"

case ("Honda", "Civic", 2005...2015):
//...
}

关于 swift : if statement with multiple text,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48290174/

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