Scala和Java的循环性能对比
2015-07-29 14:16
555 查看
对比Scala 的for, while循环,以及和Java的for, while循环作对比:
运行环境:
CPU: Intel(R) Core(TM) i5-4200M CPU @ 2.50GHz * 4
RAM: 8.00G
集成开发环境:IntelliJ IDEA 14.0.2
Scala SDK: scala-sdk-2.11.4
JDK: jdk1.7.0_45
对比表格(毫秒):
![](https://img-blog.csdn.net/20150729143220104?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20150729142658462?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20150729142745153?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20150729142843419?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Scala代码:
Java代码:
运行环境:
CPU: Intel(R) Core(TM) i5-4200M CPU @ 2.50GHz * 4
RAM: 8.00G
集成开发环境:IntelliJ IDEA 14.0.2
Scala SDK: scala-sdk-2.11.4
JDK: jdk1.7.0_45
对比表格(毫秒):
Scala代码:
object TestScalaPerformance { //循环次数 var maxindex = 10000 def testFor(): Unit = { var sum = 0 var beg = System.currentTimeMillis() for (i <- 0 to maxindex) sum += i var end = System.currentTimeMillis() println("Scala的" + maxindex + "次for循环耗时: " + (end - beg)) } def testWhile(): Unit = { var sum = 0 var i = 0; var beg = System.currentTimeMillis() while (i < maxindex) { i += 1 sum += i } var end = System.currentTimeMillis() println("Scala的" + maxindex + "次while循环耗时: " + (end - beg)) } def main(args: Array[String]) { testWhile() testFor() } }
Java代码:
public class TestJavaPerformance { //循环次数 private static long maxindex = 10000; public static void main(String[] args) { testWhile(); testFor(); } public static void testWhile() { int i = 0; int sum = 0; long begtime = System.currentTimeMillis(); while(i < maxindex){ i++; sum += i; } long endtime = System.currentTimeMillis(); System.out.println("Java的" + maxindex + "次while循环耗时: " + (endtime - begtime) ); } public static void testFor() { int i = 0; int sum = 0; long begtime = System.currentTimeMillis(); for (i = 0 ; i < maxindex; i++) sum += i; long endtime = System.currentTimeMillis(); System.out.println("Java的" + maxindex + "次for循环耗时: " + (endtime - begtime) ); } }
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树
- [原创]java局域网聊天系统