2015-05-19 3 views
-4

Без использования цикла, как печатать последовательность похожих символов? номер таких символов будет соответствовать моему желанию. т.е.Печать строки похожих символов

****** (6 звезд)

******** (или 8 звезд)

есть ли функция строки, чтобы сделать это? Может ли печать помочь?

+0

создать одну строку ******************************* *************** и подстроки печати. (0, 5) (0, 6), ... – Stultuske

+0

Насколько я знаю, нет такой функции, доступной, вам нужно написать себя. Кстати, почему вам не нужен цикл? –

+0

@Simz Это домашнее задание :) (заметьте: я не аська) – ADTC

ответ

3

Вы можете использовать recursion, чтобы сделать то же самое,

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

И позвони printStar(6) печатать его 6 раз

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); 
     } 
    } 
} 

EDIT: = бы бесконечный цикл, если вход отрицательный (даже если он не имеет смысла делать это)

+0

@ Ник правый, спасибо :) –

0
StringUtils

имеет некоторые методы как показано ниже ссылке

Commons Lang StringUtils.repeat()

в примере кода приведен ниже

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

Другим возможным решением

byte[] bytes = new byte[20]; 
Arrays.fill(bytes, (byte)'*'); 
System.out.println(new String(bytes)); 
Смежные вопросы