2014-02-18 5 views
-1

Я пробовал следующее, и он ничего не выводит. В идеале я хотел бы, чтобы текст строки повторял n раз по времени множителем int. Что я делаю не так?Как повторить строку n раз?

Строковый текст и множитель int передаются как аргументы другого метода.

public static String repeatText(String text, int multiplier) 
{ 
    String value = ""; 
    StringBuilder repeat = new StringBuilder(text.length() * multiplier); 
    repeat(repeat, text, multiplier); 

    value.equals(repeat); 

    System.out.println("Text Repeated:"); 
    System.out.println("-----------"); 
    System.out.println(repeat); 
    System.out.println("--------------"); 

    return value; 
} 
+1

Где 'repeat' метод? –

+0

Как мы узнаем, что такое метод 'repeat'? –

+0

@tangens, как вы решили, что этот вопрос повторяется? по крайней мере, этот вопрос не полностью описан. –

ответ

1

Попробуйте следующий метод:

public static String repeat(String toRepeat, int times) { 
    if (toRepeat == null) { 
     toRepeat = "null"; 
    } 

    if (times <= 0) { 
     return ""; 
    } 

    StringBuilder sb = new StringBuilder(); 
    for (int i = 0; i < times; i++) { 
     sb.append(toRepeat); 
    } 

    return sb.toString(); 
} 
+0

Вам не нужно проверять свои данные. 'append' tests для null, и если значение' times' не является положительным, цикл не будет выполняться, создавая 'st.toString()' return '" "'. – Pshemo

1

пользователя для цикла

for(int i=1; i<=multiplier; i++) 
{ 

your logic 

} 
0
public static void repeat(StringBuilder repeat,String text, int multiplier){ 

    for(int i=0; i<multiplier; i++){ 
     repeat.append(text); 
    } 
} 
Смежные вопросы