问题描述
几天前,我已经从eclipse更改为android studio。
现在,我发现了这个奇怪的错误。
if(c.moveToFirst())
{
do
{
exchange_rate = c.getFloat(columnExRate);
if(exchange_rate > 0)
total = total + c.getFloat(columnValue) * exchange_rate;
else
total = total + c.getFloat(columnValue);
}while(c.moveToNext());
}
有时exchange_rate等于Infinity。
这仅在特定的数据集中发生在第二个循环中。
也许是因为我像双输入一样输入了exchange_rate并且我读了一个浮点数?
1楼
解决了。
我保存了1 / exchange_rate值,但没有检查exchange_rate是否等于0。
1/0返回无穷大。