【问题标题】:init function for initializing List in Kotlin用于在 Kotlin 中初始化 List 的 init 函数
【发布时间】:2021-03-13 19:34:51
【问题描述】:

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

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

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

【问题讨论】:

  • Nvm,只需要将顺序改为:val allDates = List&lt;String&gt;(daysInMonth) { if(it/10 == 0) "0$it" else it.toString() } 习惯了python语法:)

标签: list kotlin init


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

    如果你想声明第一个数组 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")
            }
        }
    

    【讨论】:

      猜你喜欢
      • 2019-09-29
      • 2016-08-22
      • 2021-01-23
      • 2021-07-08
      • 1970-01-01
      • 1970-01-01
      • 2020-12-16
      • 2019-10-07
      • 1970-01-01
      相关资源
      最近更新 更多