Write a method called makeLine. The method receives an int parameter that is guaranteed not to be negative and a character. The method returns a String whose length equals the parameter and contains no characters other than the character passed. Thus, if the makeLine(5,’:’) will return ::::: (5 colons). The method must not use a loop of any kind (for, while, do-while) nor use any String methods other than concatenation. Instead, it gets the job done by examining its parameter, and if zero returns an empty string otherwise returns the concatenation of the specified character with the string returned by an appropriately formulated recursive call to itself.

LANGUAGE: JAVA

CHALLENGE:

Write a method called makeLine. The method receives an int parameter that is guaranteed not to be negative and a character. The method returns a String whose length equals the parameter and contains no characters other than the character passed. Thus, if the makeLine(5,’:’) will return ::::: (5 colons).

The method must not use a loop of any kind (for, while, do-while) nor use any String methods other than concatenation. Instead, it gets the job done by examining its parameter, and
if zero returns an empty string
otherwise returns the concatenation of the specified character with the string returned by an appropriately formulated recursive call to itself.

SOLUTION:


public String makeLine(int numberOfColons, char character){
   if (numberOfColons == 0) return "";
   else
      return character + makeLine(numberOfColons - 1, character);
}