我不是一个时髦的专家,只是不时使用它。最新的目标之一是生成一个包含一些随机数据的非常简单的文件。我创建了以下脚本:
out = new File('sampledata.txt')
Random random = new Random();
java.util.Date dt = new java.util.Date();
for (int i=0; i<100000; ++i) {
dt = new java.util.Date();
out << dt.format('yyyMMdd HH:mm:ss.SSS') + '|box|process|||java.lang.Long|' + random.nextInt(100) + '|name\n'
}
现在,我真的对它的表现感到困惑。完成大约需要 1.5分钟,而用 Java 或 Ruby 编写的相同代码只需不到一秒钟。
Ruby 中的类似代码(执行大约需要 1 秒):
需要“时间”
File.open("output.txt", "w") do |file|
100000.times do
line = Time.now.strftime("%Y%m%d %H:%M:%S.%L") + '|box|process|||java.lang.Long|' + rand(100).to_s + '|name'
file.puts line
end
end
任何想法如何提高 groovy 的处理速度?