用于在 Kotlin 中初始化 List 的 init 函数

init function for initializing List in Kotlin

我正在尝试使用 if else 条件为 init 函数提供一些额外的处理:

val allDates = List<String>(daysInMonth) { "0$it" if(it/10 == 0) else it.toString() })

这不是 init 函数的有效语法,似乎关于此的信息很少。 有关如何执行此操作的任何建议?

您的 if 语句格式似乎有误,试试这个

val allDates = List<String>(daysInMonth) {  if(it/10 == 0) "0$it" else it.toString() }

如果你想声明第一个数组 allDates

像这样的所有日期的初始化

val daysInMonth = 30
    val allDates = arrayListOf<String>()
    for(i in 1..daysInMonth){
        if(i/10 == 0){
            allDates.add("0$i")
        }else{
            allDates.add("$i")
        }
    }