A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李承伟 初级黑马   /  2012-7-31 10:08  /  2234 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

就是在用数据类型时,总是容易把doubledecimal弄错,到底怎么区分?

7 个回复

倒序浏览
你好,刚才我也测试了,这是我测试的结果,你看看我的什么地方错了,为什么得出来的结果和你的不一样呀,
还就是在使用+=的时候不要说循环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.         }
复制代码



回复 使用道具 举报
我的神呀,发现一个问题,我又错了,神饶恕我吧………………
回复 使用道具 举报
decimal精度高还是怎么的
回复 使用道具 举报
当跟金钱挂钩的时候,就用decimal   就这样记好了
回复 使用道具 举报
decimal用来存储金钱,而且后面要写上大写或小写的M/m。
回复 使用道具 举报
王峰 中级黑马 2012-7-31 17:31:41
7#
double是64位的,decimal是128位高精度浮点数,所以decimal一般不会出现浮点数计算的误差 ,所以一般用于财务和货币计算,并且在数据库里也有它,这样统一起来比较比double好,当然,它们两个的系统开销也不一样,一个小,一个大,另外要注意的是decimal的精度比double大,但所能储存的最大数却比double要小。
回复 使用道具 举报
decimal一般跟商业资金等有关,因为他精确度高,毕竟商人都是精明的
double表示的范围大但精确度不高
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马