-4

これは情報が少なすぎるかもしれません...しかし、なぜこれが私が期待するように反対に機能するのですか?

                if (indSTime[t] <= monthTotal) {

                    Log.d("indSTime", String.valueOf(indSTime[t++]));
                    Log.d("monthTotal", String.valueOf(monthTotal));

                    NewRate = Double.valueOf(indSRate[s]);
                    indApr[o] = NewRate;
                }

それ以上として機能しています。月の合計以上。

「indSTime」を4に設定しているので、EclipseのLogcatはこのように2つの変数のログ記録を開始します。

4, 4
4, 5
4, 6
4, 7

等...

あるべきだと思われる

4 ,1
4, 2
4, 3
4, 4

と停止します。

上記のコードをあまり追加しなかったのは知っていますか?目の前に欠けているものはありますか?または、これを引き起こす原因は何ですか?

4

2 に答える 2

3

4、4、5、6、および7以下です。

4は間違いなく1、2、または3以下ではありません。

なぜあなたはそれが反対であるべきだと思いますか?

于 2012-05-26T15:10:36.533 に答える
3

それは完全に合理的なものを記録しています。あなたのペアリングを見てください:

実際:

indSTime=4, monthTotal=4
indSTime=4, monthTotal=5
indSTime=4, monthTotal=6
indSTime=4, monthTotal=7

期待される:

indSTime=4, monthTotal=1
indSTime=4, monthTotal=2
indSTime=4, monthTotal=3
indSTime=4, monthTotal=4

実際のすべてのケースで、は、コードが示すとおり、indSTime以下です。monthTotal

期待されるindSTime出力では、がより大きい 3つのケースを示していますmonthTotal

したがって、実際に反対の演算子が必要だったか、ロギングによって混乱したか、あるいはその両方でした。残念ながら、ここではコンテキストを示していないため、問題がどこにあるかを正確に言うことは不可能ですが、Java自体ではありません。

于 2012-05-26T15:11:24.040 に答える