惯用的 Go:表示可选字符串
Go 中变体类型的缺失对建模值提出了挑战,这些值可以存在于不存在的值中。或现在的形式。这对于字符串尤其重要,字符串不能接受 nil 作为成员。
用于建模可选字符串的选项
具有特定空值的字符串:
a. 空字符串 (""):将空字符串指定为 null 元素,为初始化和处理映射中缺失的值提供了便利。
b. 无效的 UTF-8 字节序列:对于空字符串有效的情况,可以使用短的无效 UTF-8 字节序列(例如“xff”)来表示空值,同时允许有效的文本字符串。
使用无效的 UTF-8 字节序列
示例:
const Null = "\xff" func main() { fmt.Println(utf8.ValidString(Null)) // false s := Null fmt.Println([]byte(s)) // [255] fmt.Println(s == Null) // true s = "notnull" fmt.Println(s == Null) // false }
以上是如何在 Go 中最好地表示可选字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!