2012-03-08 12 views
-1

私のコードのどこかに小さなバグがあります!私は本当にそれを見つけたり見つけたりできないので、私は盲目になっていなければなりません。バイト配列のリストがあります。私は最初の2つの要素と各配列の最後の要素を解析しています。私が値-16、-11または-7を得たら、値を保持したい。何らかの理由で、配列のonの最後の値が削除されていません。なぜこうなった?解析のトラブル!論理のバグ

+1

問題を簡単に解決するには、コードから抜けているコードが多すぎます。たとえば、変数 "data"はどこから来ますか?多分それはあなたの問題の源でさえ...? –

+0

woops ...それらはリストです...私はそれを追加するのを忘れました..頭のおかげで.. .. – BigBug

+0

このコードはどこですか? –

答えて

2

デバッグを試しましたか?したがってdata.add(b)が実行される

if(b!= -15 && i + 2 < srec.length() && (Character.digit(srec.charAt(i + 2), 16) << 4) + Character.digit(srec.charAt(i + 3), 16) != -15 
       && (Character.digit(srec.charAt(i + 2), 16) << 4) + Character.digit(srec.charAt(i + 3), 16) != -11) 

b != 15 -> true 
i + 2 = 124 < srec.length() = 142 -> true 

(Character.digit(srec.charAt(i + 2), 16) << 4)+ Character.digit(srec.charAt(i + 3), 16) = -7 and -7 != -15 and also -7 != -11 

:あなたはb = -110 を持っている場合

は、それがこの条件に合格しました。

+0

私は問題を解決した、あなたは間違いなく正しい軌道にいた。だからthansks :) – BigBug

関連する問題