的Android似乎并不总是执行我的功能

这里是我的问题:下面的代码是由我的主要应用程序创建一个线程中运行:的Android似乎并不总是执行我的功能

for (i = 0; i < nbiter; i++) 

{

call to Method_A()

}

Method_A()是:

for (j = 0; j < 256; j++) 

{

...

call to Method_B()

..

}

Method_B正在使用BigInteger类进行6次乘法。

现在,当我运行的程序与nbiter设置为1时,我看到使用DDMS分析器,有256个调用method_B。 但是,当nbiter设置为2时,有时会有277个调用method_B,有时是330或333 ....但是没有512个调用。 任何人有一个想法? 谢谢。

这里是Method_A()的代码:

public Point Method_A(byte[] eac, Point PhiP, int cpt) 

{

int j;

for (j = 0; j < 256; j++)

{

if (eac[j] == 0)

PQ = PhiP.ZADDU(this);

else

PQ = this.ZADDU(PhiP);

this.X = PQ[0];

this.Y = PQ[1] ;

PhiP.X = PQ[2] ;

PhiP.Y = PQ[3] ;

this.Z = PQ[4] ;

PhiP.Z = PQ[4] ;

Log.d("MULT",cpt+":"+j);

}

this.X = PQ[0];

this.Y = PQ[1] ;

PhiP.X = PQ[2] ;

PhiP.Y = PQ[3] ;

this.Z = PQ[4] ;

PhiP.Z = PQ[4] ;

return new Point(PQ[2],PQ[3],PQ[4],a,b,p);

}

}

我请Method_A()与计数器i作为第三个变量,并在logcat的窗口我有(与nbiter设置为2) 0:0 0:1 .. 0:255 1:0 1:1 .. 1:255

回答:

我假设,因为你已经在代码就把我= 0不是int i = 0你已经发布for for循环,这是w你在项目中也有帽子。在这种情况下,'for'循环中的变量不会在循环中初始化,那么您在循环之后将它们设置为零?在这种情况下,'i'&'j'

如果你

for (int i = 0; i < nbiter; i++) 

{

call to Method_A()

}

那么至少你不用担心“I”的循环称为

以上是 的Android似乎并不总是执行我的功能 的全部内容, 来源链接: utcz.com/qa/259252.html

回到顶部