Swift 控制台输入不区分大小写

Swift Console input not case sensitive

我刚开始学习 Swift3。一开始,我编写了一个用于转换单位的控制台程序。我有一个控制台输入流

let typ = readLine()

当然,我得到了完全相同的字符串,但我在 if 语句中使用了它。现在我的问题我不想检查它区分大小写我只想要纯字符串。 这是我使用的 if 结构:

if typ == unitA {
    print("foo")
    //Some Code
}else if typ == unitB{
    print("super foo")
    //Some Code
}else{
    print("Invalid input :/")
}

谢谢 :D

如果你想比较不区分大小写的字符串,你可以使用 caseInsensitiveCompare 看这个

在比较之前简单地将输入小写。此外,switch 语句可以极大地清理 if/if else/else 阶梯。

guard let input = readLine() else {
    fatalError("No input recieved")
}

switch input.lowercased() {
    case unitA: print("foo")
    case unitB: print("super foo")
    default: print("Invalid input :/")
}