看了大佬@鱼丸粗面一碗的文章:《这段代码,c 1秒,java 9秒,c# 14秒,而python。。。》,基于水仙花数的各种语言1W次性能比较,觉得很有意思。于是开启cv大法,把我有环境的各种语言都跑了一遍,包括C++,C#.Net,C#.Net Core2.2,VB.Net,VB.Net Core2.2,Java,Python,Javascript,Go,NodeJs。代码copy鱼丸的,在github上放了一份:https://github.com/dreign/Test1W
我的电脑信息如下:
基本硬件展示
处理器 英特尔 第四代酷睿 i3-4170 @ 3.70GHz 双核
主板 技嘉 H81M-S1
内存 16 GB ( 金士顿 DDR3 1600MHz )
主硬盘 OV-Blitz240GBSSD ( 240 GB / 固态硬盘 )
主显卡 AMD Radeon R5 230 ( 1 GB )
显示器 戴尔 DELA104 DELL E2418HN ( 24 英寸 )
网卡 瑞昱 RTL8168/8111/8112 Gigabit Ethernet Controller / 技嘉
声卡 英特尔 英特尔 显示器音频 @ 英特尔 Haswell 高保真音频
所有程序都是在win10环境下运行,测试的结果如下:
语言 | 执行时间(ms) | 水仙花总数 | 环境版本 | 备注 |
C++ | 0 | 60000 | gcc version 6.3.0 (MinGW.org GCC-6.3.0-1),Thread model: win32 | gcc -O 优化后,非常快,1亿次也才30ms |
C#.Net | 5178 | 60000 | .Net FrameWork 4.5 | |
C#.Net Core2.2 | 5093 | 60000 | .Net Core 2.2 | |
VB.Net | 34303 | 60000 | .Net FrameWork 4.5 | |
VB.Net Core2.2 | 23848 | 60000 | Net Core 2.2 | |
Java | 4263 | 60000 | java version "1.8.0_181" | |
Python | 63727 | 60000 | Python 3.7.1 | |
Javascript | 28219 | 60000 | Google Chrome:版本 71.0.3578.98(正式版本) (64 位) | |
Node.js | 26298 | 60000 | v8.9.3 | |
Go | 5641 | 60000 | go version go1.10.1 windows/amd64 |
运行截图:
c++
C#.Net4.5
C#.Net Core 2.2
VB.Net4.5
VB.Net Core 2.2
Java
Python
JavaScript
NodeJs
Go