//====================================================================================
// This class has 3 overloaded methods 
//====================================================================================
public class OverloadedMethod
{                                                                        
    public static void main(String args[])                       
    {
        Integer[]   intArray    = { 1, 2, 3, 4, 5 };              //create arrays of different data types
        Double[]    doubleArray = { 1.1, 2.2, 3.3, 4.4 };
        Character[] charArray   = { 'H', 'E', 'L', 'L', 'O' };

        System.out.println("Array integerArray contains:");
        printArray(intArray);                                       //pass an Integer array

        System.out.println("\nArray doubleArray contains:");
        printArray(doubleArray);                                    //pass a Double array

        System.out.println("\nArray characterArray contains:");
        printArray(charArray);                                      //pass a Character array
    }
    
    static void printArray( Integer[] inputArray )              //a method that takes an Integer array
    {      
        for(Integer element : inputArray) 
            System.out.print(element + " ");

        System.out.println();
    }
    static void printArray( Double[] inputArray )               //a method that takes a Double array
    {      
        for(Double element : inputArray) 
            System.out.print(element + " ");

        System.out.println();
    }
    static void printArray( Character[] inputArray )            //a method that takes a Character array
    {      
        for(Character element : inputArray) 
            System.out.print(element + " ");

        System.out.println();
    }
}