java - groovy中的数据类型与java类似吗?

标签 java types groovy

我想弄清楚我应该在 java 中使用类似于 groovy 的类似数据类型是什么?

我的常规代码如下

statistic = [:]
entries.each {
    minute = it.getRequestTime()

    value = it.getValue()

    if (statistic[minute] == null) {
        statistic[minute] = [:]
    }

    if (statistic[minute][value] == null) {
        statistic[minute][value] = ['count': 0L, 'timesum': 0L, 'min': Long.MAX_VALUE, 'max': Long.MIN_VALUE]
    }
}

我是 Groovy 新手,很难理解他们使用的数据类型。我可以理解他们在groovy中使用了Hashmap(statistic = [:])。但后者确实让我感到困惑。谁能帮我理解这段代码?

最佳答案

这些是嵌套的 map , map 中的 map 。

if (statistic[minute] == null) 

这意味着,如果没有分钟键的条目,则在此处放置一个新的空 map 。

if (statistic[minute][value] == null)

这意味着,如果统计[分钟]中没有条目
对于键,然后将另一个 map 放在那里。

关于java - groovy中的数据类型与java类似吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22038791/

相关文章:

java - 如何在面板底部对齐不同尺寸的按钮?

java - 排除 findBugs 发现的错误

jenkins - 脚本不允许使用 staticMethod java.time.Instant parse java.lang.CharSequence

javascript - 尝试至少存在一个必需的可选参数,但它的存在排除了其他参数

php - 弱类型语言的优点(和缺点)是什么?

Groovy XmlSlurper

android - 如何将显式 API 模式应用于除 app 模块之外的所有模块?

java - 使用jaxb在java中创建xml文件

java - 将配置传递给 Keycloak SPI Provider?

r - R 矩阵可以包含不同的数据类型吗?这个修改过的列表矩阵有效吗?