我正在寻找一种更好的方法来更好地实现以下内容:
我已经导入 import java.text.MessageFormat 来设置我想要的格式。
- val szphoneFrmt 包含我想要的格式。
- val szInitialString 设置为我从数据库中提取的值。
- val szWorkString 通过子字符串分解字符串。
- val szWorkPhone 是带有格式化字符串的最后一个字符串。
现在我看到的问题是有时数据库中的值为空,因此 szInitialString 为空,所以我进行了检查以防止越界异常。现在这段代码正在工作,我可以正确格式化字符串,但我认为这不是一个好的解决方案。
有人对整理这段代码有什么建议吗?我完全可以放弃使用 Java 的 MessageFormat,但我还没有看到任何其他合理的解决方案。
val szphoneFrmt = new MessageFormat("1 {0}{1}-{2}")
val szInitialString = applicant.ApplicantContact.Phone1.toString
val szWorkString = {
if (szInitialString != null) {
Array(szInitialString.substring(0,3),
szInitialString.substring(3,6),
szInitialString.substring(6))
} else { null }
}
val szWorkPhone = phoneFrmt.format(szWorkString)