我有一个字符串,例如“mon”或“tue”或“sun”。我想将其解析为DayOfWeek
(如果不成功,则为 null)。
我正在使用 Kotlin,但我想 Java 人也会明白我想做什么:
private fun String.parseToDayOfWeek(pattern: String = "EE") =
try {
DateTimeFormatter.ofPattern(pattern, Locale.US).parse(this, DayOfWeek::from)
} catch (e: Exception){
null
}
这不起作用,我只是得到null
s。
相反,我必须在解析它之前像这样对字符串进行消毒:
val capitalized = this.lowercase().replaceFirstChar { it.uppercase() }
这感觉很麻烦。我是在使用错误的 api 还是这是一个沉重的绊脚石?