Java Generics | HackerRank Solution

Hello coders, today we are going to solve Java Generics HackerRank Solution.

Java Generics

Problem

Generic methods are a very efficient way to handle multiple datatypes using a single method. This problem will test your knowledge on Java Generic methods.

Let’s say you have an integer array and a string array. You have to write a single method printArray that can print all the elements of both arrays. The method should be able to accept both integer arrays or string arrays.

You are given code in the editor. Complete the code so that it prints the following lines:

 1
 2
 3
 Hello
 World

Do not use method overloading because your answer will not be accepted.

Solution – Java Generics

import java.io.IOException;
import java.lang.reflect.Method;

class Printer
{
   //Write your code here
  
       public <T> void printArray(T[] elements){
       for (T element : elements){
           System.out.println(element);
      
   }
   }
 
}

public class Solution {


    public static void main( String args[] ) {
        Printer myPrinter = new Printer();
        Integer[] intArray = { 1, 2, 3 };
        String[] stringArray = {"Hello", "World"};
        myPrinter.printArray(intArray);
        myPrinter.printArray(stringArray);
        int count = 0;

        for (Method method : Printer.class.getDeclaredMethods()) {
            String name = method.getName();

            if(name.equals("printArray"))
                count++;
        }

        if(count > 1)System.out.println("Method overloading is not allowed!");
      
    }
}

Disclaimer: The above Problem ( Java Generics ) is generated by Hacker Rank but the Solution is Provided by CodingBroz. This tutorial is only for Educational and Learning Purpose.

Leave a Comment

Your email address will not be published. Required fields are marked *