swift string.swift

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift string.swift相关的知识,希望对你有一定的参考价值。

public protocol OptionalWrapper {
    associatedtype Wrapped
    var wrapped: Wrapped? { get }
}

extension Optional: OptionalWrapper {
    public var wrapped: Wrapped? {
        return self
    }
}
protocol StringProtocol {
    var value: String { get }
}
extension String: StringProtocol {
    var value: String { return self }
}

extension Optional where Wrapped: StringProtocol {
    var getOrDefault: String {
        return ""
    }
    var isNilOrEmpty: Bool {
        return wrapped?.value.isEmpty ?? true
    }
}

var s: String? = nil
s.getOrDefault // ""
s.isNilOrEmpty // true
// これのがむしろ分かりやすい?
s ?? ""
s?.isEmpty ?? true

s = "( ´・‿・`)"
s.getOrDefault // ( ´・‿・`)
s.isNilOrEmpty // false
// これのがむしろ分かりやすい?
s ?? ""
s?.isEmpty ?? true

以上是关于swift string.swift的主要内容,如果未能解决你的问题,请参考以下文章

Swift 1.2 不能使用类型为 '(String)' 的参数列表调用 'count'

Swift“无法将''类型的值转换为'String'类型

APPDelegate 中的 openURL 转换错误 NSString -> String (Swift & iOS8)

如何将 swift Dictionary 转换为 NSDictionary

条件绑定的初始化程序必须具有可选类型,而不是“字符串” - ios - swift

SwiftUI - 发出获取请求时收到错误