打印一串相似的字符

时间:2015-05-19 07:10:02

标签: java string design-patterns methods sequence

不使用循环,如何打印一系列相似的字符?数字 这些人物将根据我的意愿。 即。

******(6星)

********(或8星)

是否有任何字符串函数可以执行此操作? printf可以提供任何帮助吗?

4 个答案:

答案 0 :(得分:3)

您可以使用recursion执行相同的操作,

printStar(int x)
{
   if(x > 0)
   {
     System.out.print("*");
     printStar(x-1);
   }
}

并致电printStar(6)将其打印6次

答案 1 :(得分:0)

你可以在这里使用递归。

示例:

public class Test {

    public static void main(String[] args) {
        printString(5);
    }

    public static void printString(int occurance) {
        if(occurance > 0) {
            System.out.print("*");
            printString(--occurance);
        }
    }
}

编辑:!=如果输入为负,则会产生无限循环(即使这样做没有意义)

答案 2 :(得分:0)

StringUtils有一些方法,如下面链接

Commons Lang StringUtils.repeat()

代码示例如下所示

String star = "*";
String repeatStar = StringUtils.repeat(star, 6);

答案 3 :(得分:0)

另一种可能的解决方案

byte[] bytes = new byte[20];
Arrays.fill(bytes, (byte)'*');
System.out.println(new String(bytes));