黑马程序员技术交流社区

标题: 关于double与decimal使用的疑问? [打印本页]

作者: 李承伟    时间: 2012-7-31 10:08
标题: 关于double与decimal使用的疑问?
就是在用数据类型时,总是容易把doubledecimal弄错,到底怎么区分?

作者: 蔡尚猛    时间: 2012-7-31 10:18
你好,刚才我也测试了,这是我测试的结果,你看看我的什么地方错了,为什么得出来的结果和你的不一样呀,
还就是在使用+=的时候不要说循环1000次了,就是循环100次感觉都很卡,你的是这样子的情况吗?
  1.         private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             DateTime dt1 = DateTime.Now;
  4.             for (int i = 0; i < 1000; i++)
  5.             {
  6.                 textBox1.AppendText(i.ToString());
  7.             }
  8.             TimeSpan dt11 = DateTime.Now-dt1;
  9.             label1.Text = "AppendText:" + dt11.TotalMilliseconds.ToString();
  10.         }

  11.         private void button2_Click(object sender, EventArgs e)
  12.         {
  13.             DateTime dt2 = DateTime.Now;
  14.             for (int i = 0; i < 1000; i++)
  15.             {
  16.                 textBox2.Text +=i.ToString();
  17.             }
  18.             TimeSpan dt22 = DateTime.Now - dt2;
  19.             label2.Text ="+=:"+ dt22.TotalMilliseconds.ToString();
  20.         }
复制代码




作者: 蔡尚猛    时间: 2012-7-31 10:20
我的神呀,发现一个问题,我又错了,神饶恕我吧………………
作者: 王志波    时间: 2012-7-31 11:11
decimal精度高还是怎么的
作者: ARMdong    时间: 2012-7-31 12:05
当跟金钱挂钩的时候,就用decimal   就这样记好了
作者: 黑马王刚    时间: 2012-7-31 12:19
decimal用来存储金钱,而且后面要写上大写或小写的M/m。
作者: 王峰    时间: 2012-7-31 17:31
double是64位的,decimal是128位高精度浮点数,所以decimal一般不会出现浮点数计算的误差 ,所以一般用于财务和货币计算,并且在数据库里也有它,这样统一起来比较比double好,当然,它们两个的系统开销也不一样,一个小,一个大,另外要注意的是decimal的精度比double大,但所能储存的最大数却比double要小。
作者: 郭正续    时间: 2012-7-31 18:58
decimal一般跟商业资金等有关,因为他精确度高,毕竟商人都是精明的
double表示的范围大但精确度不高




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2