### Question:
Distance { public static double maximum(AssociativeArray a1, AssociativeArray a2) { Map<Object, Double> columnDistances = columnDistances(a1, a2, null); double distance=0.0; for(double columnDistance : columnDistances.values()) { columnDistance = Math.abs(columnDistance); if(distance<columnDistance) { distance = columnDistance; } } return distance; }  static double euclidean(AssociativeArray a1, AssociativeArray a2); static double euclideanWeighted(AssociativeArray a1, AssociativeArray a2, Map<Object, Double> columnWeights); static double manhattan(AssociativeArray a1, AssociativeArray a2); static double manhattanWeighted(AssociativeArray a1, AssociativeArray a2, Map<Object, Double> columnWeights); static double maximum(AssociativeArray a1, AssociativeArray a2);  }### Answer:
@Test public void testMaximum() { logger.info("maximum"); AssociativeArray a1 = new AssociativeArray(getMap1()); AssociativeArray a2 = new AssociativeArray(getMap2()); double expResult = 2.0; double result = Distance.maximum(a1, a2); assertEquals(expResult, result, Constants.DOUBLE_ACCURACY_HIGH); }