Comparator<Entity>
の実装を作成しましたが、このコンパレータを使用してArray<Entity>
をソートすると、私はjava.lang.NullPointerException
を受け取ります。なぜなら、エンティティを既に削除された静的コレクションにマップするときです。今私の問題は、私が比較メソッドをスキップするために何を返すのか分からないということです。Comparatorでヌル比較メソッドの引数を処理する方法は?
public class CustomComparator implements Comparator<Entity> {
public int compare(Entity e1, Entity e2) {
if(e1== null || e2 == null) {
return // don't know what to return to skip this method;
}
Vector2 e1Pos = Mapper.transform.get(e1).position;
Vector2 e2Pos = Mapper.transform.get(e2).position;
}
}
http://stackoverflow.com/questions/2401606/comparator-with-null-valuesを参照してください。 – c0der
これは、「配列」にnull要素が含まれている場合にのみ発生します。解決策:しないでください。 – EJP