Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / Java与C在整数累加的运算对比

闲来没事,今天晚上突发奇想,在同样平台Ubuntu 14.04,同等运算负荷的情况下测试了一下C与Java的性能。可是,最后的实验结果让我大吃一惊,在我的心里也慢慢再一次对詹姆斯.高斯林(Java语言的作者)的敬意。实验本身很简单,各位看官也可以去做同样的实验。有了心得之后,不妨一起本着学习的心态,共同交流,共同成长。下面贴出测试代码:C语言:int main()
{
 int number=0,i=0;
 for(i=0;i<=1000000000;i++)
  number++;
 return 0;
}C语言的编译器是gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2。编译的程序a.out的运行时间用time测出,为real    0m3.153s, user    0m3.152s,  sys    0m0.000sJava语言:public class tst
{
 public static void main(String[] args)
 {
  int i;
  int number=0;
  long startTime = System.currentTimeMillis();//运行起止时间
  for(i=0;i<=1000000000;i++)
   number++;
  long endTime = System.currentTimeMillis();//运行终止时间
  float seconds = (endTime - startTime)/1000F;
  System.out.println(Float.toString(seconds) + " seconds.");
 }
}Java的编译器是javac 1.7.0_79,java虚拟机是java version "1.7.0_79",OpenJDK Runtime Environment (IcedTea 2.5.5) (7u79-2.5.5-0ubuntu0.14.04.2),OpenJDK Server VM (build 24.79-b02, mixed mode)。time测出的结果为:real    0m0.093s,user    0m0.088s,sys    0m0.008s(注:如果用java的函数测试的话(不考虑jvm的时间开销)运行时间为0.006 seconds.)更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-06/118511.htm