【问题标题】:Convert a List (long) into List(String ) in Grails2.4.3 (Groovy)在 Grails2.4.3 (Groovy) 中将 List (long) 转换为 List(String)
【发布时间】:2015-01-06 13:17:42
【问题描述】:

Post call 以List<Long> 的形式提供数据,现在我必须将其转换为List<String>,所以我使用了这种方法:

deleteAvailablity.startDate.each {
   startDateList.add(it.toString())
}
deleteAvailablity.startDate = startDateList

还有比这更好的方法吗?

【问题讨论】:

  • 您能接受最适合您需要的答案吗?

标签: grails groovy


【解决方案1】:

你可以使用collect:

def listOfLongs = [0L, 1L, 2L]
def listOfStrings = listOfLongs.collect { it.toString() }

assert listOfStrings == ["0", "1", "2"]

【讨论】:

    【解决方案2】:

    使用Spread Operator

    这个简单的结构应该可以完成这项工作:

    assert [1l, 2l, 3l]*.toString() == ['1', '2', '3']
    

    【讨论】:

    • 扩展运算符在这里是更好的选择,因为它在调用方法或从每个实例中检索属性时与collect 执行相同的操作,并且不那么冗长。
    猜你喜欢
    • 2019-07-31
    • 2011-03-10
    • 1970-01-01
    • 2021-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多