【发布时间】:2020-11-10 18:40:13
【问题描述】:
我使用的 API 返回(在其他字段中)一个必需的 telephone1 和一个可选的 telephone2。但是,我获取的 JSON 始终包含两个字段,并且缺少的条目显示为空字符串。
{
"telephone1": "+1 555 1234",
"telephone2": ""
}
当响应映射到 pojo 时,是否最好将空字符串转换为 null?这样:
data class(
val telephone1: String,
val telephone2: String?
}
对我来说,这更好地传达了可能的状态。不过,我应该吗?有缺点吗?
【问题讨论】:
-
您实际使用哪个 API?
-
我工作的一家大公司的内部 API。这意味着它不是公开的,但我也没有影响它。
-
你问“如何实现这个(反)序列化?”或“什么更好地强调缺少字符串值 - null 或空字符串?”
-
更好的方法是强调不存在字符串值 - null 或空字符串。如果后端开发人员的选择——他选择了一个空字符串——会对我的选择产生任何影响。
标签: oop kotlin design-patterns software-design