私はPMD警告 - UseCollectionIsEmptyを取得しています。正確なメッセージは以下の通りです:PMDの警告:UseCollectionIsEmptyを修正するにはどうすればよいですか?
"size()== 0(またはsize()!= 0、size()> 0、size )< 1)最後のelse if
ステートメントでisEmpty()を呼び出します。
私の問題は、私のステートメントがArrayListが空でないかどうかをチェックしていることです。しかし、PMDの警告はisEmpty()に変更するように指示していますが、これは私が行う必要のないものです。これを修正するための回避策は何ですか?代わりに、あなたが使用する必要があります
} else if (myPossDir.size() > 0) {
myDirection = myPossDir.get(random.nextInt(myPossDir.size()));
} else {
myDirection = getDirection().reverse();
}
の
if (theNeighbors.get(getDirection()) == Terrain.CROSSWALK) {
myDirection = getDirection();
} else if (theNeighbors.get(getDirection().left()) == Terrain.CROSSWALK) {
myDirection = getDirection().left();
} else if (theNeighbors.get(getDirection().right()) == Terrain.CROSSWALK) {
myDirection = getDirection().right();
} else if (myPossDir.size() > 0) {
myDirection = myPossDir.get(random.nextInt(myPossDir.size()));
} else {
myDirection = getDirection().reverse();
}
あなたはそれを誤読しています。これは 'size()'の一般的な使い方について話しています。あなたの場合、 'isEmpty'を否定します。 – Savior
@PiIlarもしあなたが 'else if(!myPossDir.isEmpty())'を実行することを意味するならば、私はそれに対して新しいPMD警告を受け取ります "回避するなら(x!= y)..; else ..; "もし私がそれをすれば。 – Jasmine
ああ、そうです。ちょうどそれらを並べ替える。 'if'で肯定的なものを行い、elseで否定的なものを行います。 – Savior