avoid NPE in ElemProbD

This commit is contained in:
Jonathan Shook 2021-06-01 17:35:06 -05:00
parent ba5d6025c0
commit d2fc94b873

View File

@ -7,7 +7,7 @@ import java.util.Comparator;
* and the probability is represented with double precision floating-point.
*/
public class ElemProbD<T> implements Comparable<ElemProbD<T>> {
private T element;
private final T element;
private double probability;
public ElemProbD(T element, double probability) {
@ -28,7 +28,7 @@ public class ElemProbD<T> implements Comparable<ElemProbD<T>> {
return Double.compare(probability, other.getProbability());
}
public static Comparator<ElemProbD> DESCENDING_PROBABILTY = (Comparator<ElemProbD>) (o1, o2) -> Double.compare(o2.probability,o1.probability);
public static Comparator<ElemProbD> DESCENDING_PROBABILTY = (o1, o2) -> Double.compare(o2.probability,o1.probability);
public void setProbability(double probability) {
this.probability = probability;
@ -36,6 +36,6 @@ public class ElemProbD<T> implements Comparable<ElemProbD<T>> {
@Override
public String toString() {
return element.toString() + ":" + getProbability();
return (element==null ? "NULL" : element.toString()) + ":" + getProbability();
}
}