Question: I need to print a String letter by letter with a \* between each letter.
I want to find a recursive solution and not an iterative one. The signature must be :

```java
public static String allStar(String a);

```

Answer: 
Beshambher's answer is a neat and easy way to do it. But if you want to do it recursively then :

```java
public static String allStar(String a) {
    if(a == null || a.isEmpty()) {        
        return "";
    }

    if(a.length() == 1) {
        return a;
    }        
    return  a.charAt(0) + "*" + allStar(a.substring(1));
}

```
Try this where first the string is split into array of strings of each character and then joined together with a `*` character in between them.

```
System.out.println(String.join("*",  a.split("")));

```