Swift 中的“空”字符串

1,645 阅读1分钟

“空”的定义:

  1. 长度为零的字符串。
    使用isEmpty,不要使用count是否为零来判断,因为这样会遍历整个字符串,效率低。
    // 源码
    public var isEmpty: Bool {
      return startIndex == endIndex
    }
    
  2. whitespace(空白)字符串。
    extension String {
      var isBlank: Bool {
       return allSatisfy({ $0.isWhitespace })
      }
    }
    
  3. Optional(可选)字符串。
    extension Optional where Wrapped == String {
      var isBlank: Bool {
        return self?.isBlank ?? true
      }
    }
    

参考资料:
Empty Strings in Swift