日期:2011-03-22 16:12:00 来源:本站整理
在J2ME中模拟浮点运算[Java编程]
本文“在J2ME中模拟浮点运算[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
众所周知,CLDC1.0不支持浮点数,即不支持float和double两种基本数据范例,但是在程序中,我们常常需求利用一些浮点数来举行运算.这个时刻你可以利用MathFP浮点数库,但是有些时刻我们做的工作很简单,关于后果的要求也不切确,这个时刻,我们便可以利用以下办法来模拟浮点运算.
模拟浮点运算的原理其实很简单,就是先将需求运算的数字扩大10的整数次方倍然后举行运算.
比方,你需求计算一个圆的周长,假定圆的半径为6,则圆的周长应当为2 * 6 * 3.14,而CLDC1.0中没有浮点数,利用数字3来替换3.14偏差又对比大,则可以这样来处理:
(2 * 6 * 314) / 100
即先将需求运算的浮点数,如3.14扩大100倍,然后在运算完毕时再除以100便可.
以下是简单的实现代码:
//计算圆周长
int r = 6;
int pi = 314;
int l = 0;
l = (2 * 6 * 314)/100;
则变量l就是近似的圆周长.
注意,上面的计算利用的是数学上的去1法,即不管小数部份是多少都舍去.假如想越发切确一些(当然还是不够精确),可以再利用四舍五入,这样上面的代码可以改正成:
//计算圆周长
int r = 6;
int pi = 314;
int l = 0;
l = (2 * 6 * 314 + 50)/100;
这里在运算后果的底子上加上50就实现了四舍五入,假如你的小数背面是3位,则需求加上500,顺次类推.
这样,通过上面的方法,可以实现近似的浮点运算,固然不是很精确,但是还是可以实用一些要求不高的场所.
当然,随着CLDC1.1的遍及,将为J2ME带来float和double这两种数据范例,那个时刻就不需求这些内容了.
以上是“在J2ME中模拟浮点运算[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论