|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
最近比较推广微博,所以没怎么来论坛了,
实在抱歉了,今天贡献新的技术文章给大家!
另外,有空微博关注我一下哦,谢谢谢谢!
http://weibo.com/2823267180/profile
-----------------------------------------------------------------
验证一下Integer和Long类型的处理速度问题。
当处理整数时,有2种类型:Integer和Long
Integer的数据范围:-32,768 ~ +32,767
Long的数据范围:-2,147,483,648 ~ +2,147,483,647
我们验证一下这两个类型处理速度上的差别
- Sub Doint()
- Const myMAX As Integer = 32767
- Const myMIN As Integer = -32768
- Dim i As Integer
- Dim 加法 As Integer
- Dim 减法 As Integer
- Dim 乘法 As Integer
- Dim 除法 As Integer
- Dim 求余 As Integer
- Dim cnt As Integer
- '循环100次
- For cnt = 1 To 100
- For i = myMIN - 1 To myMAX - 1
- 加法 = i + 1
- 减法 = i - 1
- 乘法 = i * 1
- 除法 = i / 1
- 求余 = i Mod 1
- Next i
- Next cnt
- End Sub
- Sub Dolong()
- Const myMAX As Long = 32767
- Const myMIN As Long = -32768
- Dim i As Long
- Dim 加法 As Long
- Dim 减法 As Long
- Dim 乘法 As Long
- Dim 除法 As Long
- Dim 求余 As Long
- Dim cnt As Long
- '循环100次
- For cnt = 1 To 100
- For l = myMIN - 1 To myMAX - 1
- 加法 = l + 1
- 减法 = l - 1
- 乘法 = l * 1
- 除法 = l / 1
- 求余 = l Mod 1
- Next l
- Next cnt
- End Sub
复制代码 当Integer和Long的循环次数相同时,在32位xp下的运行结果如下:
次数 Int类型 Long类型
平均 1.23 0.95
Long比Integer约快75%
原因分析:
Integer类型使用2byte(16bit)内存空间
而Long类型使用4byte(32bit)内存空间
当处理16bit的Integer类型时,需要先把数据转换为32bit然后执行程序。
因此使用32bit的Long类型还是比较快的。
姐妹篇
http://www.toolssoft.com/tec.asp
该贴已经同步到 xiamen168的微博 |
|