I have an array of positive/negative ints
int[] numbers = new int[10]; numbers[0] = 100; numbers[1] = -34200; numbers[2] = 3040; numbers[3] = 400433; numbers
int valueToFind = 490; Map map = new HashMap(); for (int i = 0, i < numbers.length; i++){ map.put(Math.abs(numbers[i] - valueToFind), numbers[i]); } List keys = new ArrayList(map.keySet()); Collections.sort(keys); return map.get(keys.get(0));