使用第一个和最后一个字母优化过滤数组

时间:2017-06-24 07:11:11

标签: arrays swift character

我有一个字符串数组,我希望得到所有以某个字符开头并以某个字符结尾的事件。我今天就是这样做的:

var arr = ["Aa", "Bb", "Ab", "Abc", "Dd"]
var newArr = [String]()

for str in arr {
    if str.characters.first == "A" && str.characters.last == "c" {
        newArr.append(str)
    }
}
arr = newArr

如果感觉非常混乱,但它确实有效。我可以使用过滤器或类似工具对其进行优化吗?

1 个答案:

答案 0 :(得分:2)

您可以filterhasPrefixhasSuffix一起使用arr = arr.filter({ $0.hasPrefix("A") && $0.hasSuffix("c") }) // Abc 。试试这个:

UserDefaults.standard.set("User Welcomed", forKey: "onboarded")