package cgeo.geocaching.sorting; import cgeo.geocaching.models.Geocache; /** * sorts caches by popularity ratio (favorites per find in %). */ class PopularityRatioComparator extends AbstractCacheComparator { @Override protected int compareCaches(final Geocache cache1, final Geocache cache2) { final int finds1 = cache1.getFindsCount(); final int finds2 = cache2.getFindsCount(); float ratio1 = 0.0f; if (finds1 != 0) { ratio1 = (float) cache1.getFavoritePoints() / (float) finds1; } float ratio2 = 0.0f; if (finds2 != 0) { ratio2 = (float) cache2.getFavoritePoints() / (float) finds2; } return Float.compare(ratio2, ratio1); } }