黑马程序员技术交流社区
标题:
精度问题求帮忙
[打印本页]
作者:
abc张强8
时间:
2014-6-30 20:46
标题:
精度问题求帮忙
public class haha
{
public static void main(String[] args)
{
System.out.println(Feb(40));
}
public static int Feb(int index)
{
if(index < 1)
{
System.out.println("error remeo");
return -1;
}
if(index == 1 || index == 2)
{
return 1;
}
long f1 = 1L;
long f2 = 1L;
long f = 0L;
for(int i = 0; i < index-2; i++)
{
f = f1 + f2;
f1 = f2;
f2 = f;
}
return f;
}
}
复制代码
报一个错误 最后的return f 说是:找到long 需要int 可能造成精度损失 为什么啊 明明都定义的是long
作者:
天,殇心
时间:
2014-6-30 21:46
你写的这个方法Feb返回类型是int类型,
但是你的f是Long类型的,
所以报错,需要强制转换
作者:
非5莫属
时间:
2014-6-30 21:55
把返回值类型改成long
作者:
玉冰竹
时间:
2014-6-30 22:54
你写的Feb方法的返回值类型是int型
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2