所以我的Kotlin
应用程序正在接受一个输入字符串,它应该是某种格式的日期:
fun haveFun(dateStr: String){
var formatter = DateTimeFormatter.ofPattern("dd-MMM-yyyy")
var formattedDate = dateStr.format(formatter)
println(formattedDate)
}
Run Code Online (Sandbox Code Playgroud)
问题是无论我发送哪个输入字符串,似乎一切都是有效的,并且没有抛出错误。
该程序对我发送的任何文本都很酷:61-Boby-2019
甚至I'm not a date
从 Java 开始,我习惯于抛出一些异常或isValid
方法,但我在 Kotlin 中还没有找到这样的东西
这应该有效。而不是使用format()使用parse()它会在失败时抛出异常并在调用端处理它。
@Throws(ParseException::class)
fun haveFun(dateStr: String) {
var formatter = SimpleDateFormat("dd-MMM-yyyy", Locale.getDefault())
val date = formatter.parse(dateStr)
println(date)
}
Run Code Online (Sandbox Code Playgroud)
它会抛出如下错误:
java.text.ParseException: Unparseable date: "im not date"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3548 次 |
最近记录: |