Just simple Java using a series of for loops. The below method will return a 2D int array with each row consisting of two columns, the highest array value and its' respective array index number.
public int[][] getAllMaxValues(int[] allValues) {
    int maxVal = 0;
    int counter = 0;
    // Get the Max value in array...
    for (int i = 0; i < allValues.length; i++) {
        if (allValues[i] > maxVal) { 
            maxVal = allValues[i]; 
        }
    } 
    // How many of the same max values are there?
    for (int i = 0; i < allValues.length; i++) {
        if (allValues[i] == maxVal) {
            counter++;
        }
    }
    // Place all the max values and their respective
    // indexes into a 2D int array...
    int[][] result = new int[counter][2];
    counter = 0;
    for (int i = 0; i < allValues.length; i++) {
        if (allValues[i] == maxVal) {
            result[counter][0] = maxVal;
            result[counter][1] = i;
            counter++;
        }
    }
    // Return the 2D Array.
    return result;
}
How you might use this method:
int[] allMiles = {100, 10, 100, 60, 20, 100, 34, 66, 74};
int[][] a = getAllMaxValues(allMiles);
for (int i = 0; i < a.length; i++) {
    System.out.println("Array max value of " + a[i][0] + 
                       " is located at index: " + a[i][1]);
}
Console window would display:
Array max value of 100 is located at index: 0
Array max value of 100 is located at index: 2
Array max value of 100 is located at index: 5