I have this function:
final ArrayList<Addressable> tempStoreList = new ArrayList<>();
tempStoreList.addAll(addressables);
    Collections.sort(tempStoreList, new Comparator<Addressable>() {
        @Override
        public int compare(Addressable o1, Addressable o2) {
            double distanceToO1 = 0;
            double distanceToO2 = 0;
            if (o1.getAddress() == null) {
                return (o2.getAddress() == null) ? 0 : -1;
            }
            if (o2.getAddress() == null) {
                return 0;
            }
            if (userLocation != null && o1.getAddress() != null && o2.getAddress() != null) {
                distanceToO1 = GlobalUtilities.distance(userLocation, o1.getAddress().getLocation(), "K");
                distanceToO2 = GlobalUtilities.distance(userLocation, o2.getAddress().getLocation(), "K");
            }
            if (distanceToO1 < distanceToO2) {
                return -1;
            } else if (distanceToO1 > distanceToO2) {
                return 1;
            } else {
                return 0;
            }
        }
    });
For some reason, I keep getting a NPE on:
if (o2.getAddress() == null) {
    return 0;
}
Which to me means that null was somehow placed in the array. Anyone ever encounter this before?
 
     
    