作者batista5566 (炸弹摔5566)
看板java
标题Fw: [问题] 计算值为零
时间Mon May 20 19:56:56 2013
※ [本文转录自 AndroidDev 看板 #1HcWz_HK ]
作者: batista5566 (炸弹摔5566) 看板: AndroidDev
标题: [问题] 计算值为零
时间: Mon May 20 19:56:44 2013
各位好,我在网路上看到下面一段程式,
我要取值在MainActivity中显示f2跟f4的数值,
可是我能在MainActivity中显示出f2的值,
却显示不出f4的值,
我用debugger看,f2有值,f3是f2的值(这f3是我用来观看 ),
但f4的值总是为0,
(1)照理来讲,应该是将f2做运算而已,怎麽会是0而已?
请各位大大解说一下。
另外,我想请教,这应该跟Java有关,但我没学过Java,
(2)就前面f2已设为int,为什麽还要设f2=(int)并用()号包住里面的计算式?
因为我移除等号後面的()号会出现错误,把(int)单独移掉也是错,这是甚麽性质?
(3)另外,我如果for(i=0;i<30;i++);
其中的i算int还是哪种类型?
谢谢!
public void Test()
{
float frequency=0;
int f1=0,f2=0,i=0;
int f4=0;
int f3=0;
AAA_time = System.currentTimeMillis();
frequency = AAA_time - LAST_AAA_time;
frequency = 1000/frequency*60;
f1=(int)frequency;
f[29]=(int)frequency;
if(f[0]>0)
{
for(i=0;i<30;i++)
f2=f2+f[i];
f2=(int) ((f2/30) + 0.5);
f3=f2;
f4= (60/f3)*1000;
Message msg =
mHandler.obtainMessage(MainActivity.MESSAGE_READ_AAAT);
Bundle b = new Bundle();
b.putInt("f2",f2);
b.putInt("f3",f4);
msg.setData(b);
msg.sendToTarget();
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.124.43.36
※ 发信站: 批踢踢实业坊(ptt.cc)
※ 转录者: batista5566 (140.124.43.36), 时间: 05/20/2013 19:56:56
1F:推 PsMonkey:程式码不完整,根本无从判断起,而且这种 logic error 05/20 20:08
2F:→ PsMonkey:基本上拿上来问完全没意义,所以锁文 05/20 20:08
3F:→ coolcomm:那个变数i宣告在变数frequency底下=_= 05/20 20:41
4F:→ cha122977:应该是f2在程式中<30 05/20 21:46
5F:→ cha122977:混淆了= = 应该是f3>60...导致f4的被乘数是0 05/20 21:48
6F:→ batista5566:喔,谢谢。 05/25 16:21