打印等同于 Java 中的字符串的字符特定行

Printing a character specific line equivalent to string in Java

为了保持简短,我正在尝试编写一个程序,它不仅可以将用户输入转换为标题。但也会在输出下方打印出用户生成的装饰性下划线。 例子;

"prompt to get user input"

输入:我是标题,*

输出:

I Am A Title
* ** * *****

我正在考虑使用一种方法来接收一个字符串和一个字符,并使用它来计算它必须输出的字符数。多亏了这里的 post,我已经能够获得以大写字母输出的标题。现在只有角色了。即使这只是思考问题的方法。任何帮助,将不胜感激。

public static void printUnderline(String s, char c){
    char[] arr =s.toCharArray();
    for(int i=0;i<arr.length;i++)
        if(arr[i] == ' ')
            System.out.print(' ');
        else
            System.out.print(c);
}
        String str = "i am a title";
        String aux = "";
        String[]titles = str.split(" ");

        for(int i=0; i<titles.length;i++){
            aux += titles[i].replaceFirst(titles[i].charAt(0)+"", Character.toUpperCase(titles[i].charAt(0))+"") + " ";
        }

        System.out.println(aux);
        if(str.contains(" ")){
            aux = str;
            aux = aux.replaceAll("[A-Za-z]",  "*");

            System.out.println(aux);

        }else{
            System.out.println(false);
        }