Groovy:Groovy Bean创建比java.util.Map创建更长?

Ole*_*ndr 0 groovy

class Test {
    String field
    int num

    public Test (String field, int num) {
        this.field = field
        this.num = num
    }
}

def start = System.currentTimeMillis()

def testObj = new Test("i'm field", 1)

println "Beans: ${System.currentTimeMillis() - start}"

def start2 = System.currentTimeMillis()

def map = [:]
map.field = "i'm field"
map.num = 1

println "Maps: ${System.currentTimeMillis() - start2}"
Run Code Online (Sandbox Code Playgroud)

输出是:

Beans: 3
Maps: 0
Run Code Online (Sandbox Code Playgroud)

我的Grails服务器通过JSON进行通信.我正在使用map < - > JSON转换,但我认为使用bean会更好,因为在map中你必须调用多个put()方法...

但是简单的脚本显示Map创建和两个put操作比简单对象构造函数更快...

那么我会继续使用地图或豆类更好吗?

Mic*_*rdt 7

你的脚本绝对毫无意义.您尝试测量的操作远远低于测量阈值.输出只是随机噪声.重复每次分配一百万次并使用System.nanoTime(),然后您可以获得有意义的数据.

在任何情况下,如果存在显着差异,对您的应用来说几乎肯定没有意义.这是过早优化的典型示例,即浪费时间.