Swift程序:根据字符串值查找枚举
枚举(enum)是一种用户自定义的数据类型,它包含一组相关的数值。它使用`enum`关键字定义。它也称为枚举情况(enum case),因为它使用`case`关键字声明其内部的值。在Swift中,允许我们通过字符串值创建枚举。
语法
enum nameOfEnum: Type { case value1 case value2 case value3 } Let enumVariable = value
这里,`nameOfEnum`表示枚举的名称,`value1`、`value2`等是在枚举中定义的值,`enumVariable`是枚举类型的变量,只能存储给定枚举中存在的值。
算法
步骤1 - 创建一个字符串类型的枚举。
步骤2 - 使用`case`语句为枚举赋值。
步骤3 - 现在创建一个函数来从枚举中获取值。
步骤4 - 创建一个带有值的变量。
步骤5 - 通过调用上述函数检查该值是否存在于变量中。
步骤6 - 显示输出
示例1
在下面的Swift程序中,我们将根据字符串值查找枚举。因此,我们首先将创建一个包含5个值的字符串类型枚举。然后,我们创建一个枚举类型的变量,然后使用`ProLanguages.Java`将枚举值赋给变量并打印输出。
import Foundation import Glibc enum ProLanguages: String { case Swift case Java case Python case Perl case CSharp } // Create variable of enum let resValue : ProLanguages // Assigning value to the variable resValue = ProLanguages.Java print("Best programming Language is:", resValue)
输出
Best programming Language is: Java
示例2
在下面的Swift程序中,我们将根据字符串值查找枚举。因此,我们首先将创建一个包含6个值的字符串类型枚举。然后创建一个函数,该函数接受一个输入字符串,并尝试使用`rawValue`初始化器将其与给定枚举中存在的case匹配。如果在给定枚举中找到匹配项,则返回该值,否则返回`nil`。
import Foundation import Glibc enum geomertyBox: String { case Pencil case Pen case Sharpener case Eraser case Glue } func getElements(from str: String) -> geomertyBox? { return geomertyBox(rawValue: str) } let inputItem = "Pen" if let result = getElements(from: inputItem) { print("Item found in the geomertyBox: \(result.rawValue)") } else { print("Try again!!") }
输出
Item found in the geomertyBox: Pen
结论
这就是我们如何根据字符串值查找枚举的方法。在枚举中,您可以根据需要声明任意数量的值。此外,您可以为枚举值分配原始值。您还可以使用for-in循环遍历枚举。它允许您以类型安全的方式使用值。当开发者有多个编码选项时,通常会使用它。
广告