double在输出为字符串的几种方法效率测试
2013-12-16 15:20
253 查看
测试结果:
double->none 366ms
double->long 161ms
double->long2 188ms
double->format 564ms
double->Round 393ms
代码:
double->none 366ms
double->long 161ms
double->long2 188ms
double->format 564ms
double->Round 393ms
代码:
using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; using System.Threading.Tasks; namespace testStringbuilder { class Program { static void Main(string[] args) { const int count = 1000000; RunTest("double->none",()=> { StringBuilder sb = new StringBuilder(1000*1024*32); double a = 3.1415926; for (int i = 0; i < count; i++) { sb.Append(a); sb.Append(','); } }); RunTest("double->long", () => { StringBuilder sb = new StringBuilder(1000 * 1024 * 32); double a = 3.1415926; for (int i = 0; i < count; i++) { sb.Append((long)a); sb.Append(','); } }); RunTest("double->long2", () => { StringBuilder sb = new StringBuilder(1000 * 1024 * 32); double a = 3.1415926; for (int i = 0; i < count; i++) { sb.Append((long)(a * 100)); sb.Append(','); } }); RunTest("double->format", () => { StringBuilder sb = new StringBuilder(1000 * 1024 * 32); double a = 3.1415926; for (int i = 0; i < count; i++) { sb.AppendFormat("{0:f3}",a); sb.Append(','); } }); RunTest("double->Round", () => { StringBuilder sb = new StringBuilder(1000 * 1024 * 32); double a = 3.1415926; for (int i = 0; i < count; i++) { sb.Append(Math.Round(a, 3)); sb.Append(','); } }); } private static void RunTest(string key, Action action) { double milli = 0; for (int i = 0; i < 3; i++) { Stopwatch watch = Stopwatch.StartNew(); try { action(); } catch (Exception ex) { Console.WriteLine(ex); } watch.Stop(); milli += watch.ElapsedMilliseconds; } Console.WriteLine("{0}\t{1}ms", key, (long) (milli/3)); } } }
相关文章推荐
- Java实现字符串倒序输出的几种方法
- 几种字符串反转方法效率比较
- 几种读大文件方法的效率对比测试
- 几种字符串反转方法效率比较
- 对字符串倒过来输出的几种处理方法。
- C++中的几种字符串输入输出方法
- 几种字符串反转方法效率比较
- Java实现字符串倒序输出的几种方法
- 取枚举值和枚举名几种方法效率测试
- 几种字符串反转方法效率比较
- C#判断字符串为空的几种方法和效率判断
- 判断字符串为空有几种方法,哪种效率高
- 几种字符串反转方法效率比较
- 几种读大文件方法的效率对比测试
- Java实现字符串倒序输出的几种方法
- 5种字符串拼接方法效率的测试
- 测试代码执行效率的几种方法比较
- JavaScript数组去重的几种方法效率测试
- JavaScript数组去重的几种方法效率测试