2015-03-22 4 views
0

Я хочу отформатировать вывод моего кода так, чтобы с каждым циклом появлялось лишнее пробел.Дополнительные пробелы в java

Пример:

names[4] = "bob", "mark", "james", "frank"; 

for (int i = 0; i < 4; i++){ 
    System.out.println("Hello, my name is " + names[i]") 
} 

Я хочу выход быть:

Hello, my name is bob 
Hello, my name is mark 
    Hello, my name is james 
    Hello, my name is frank 

Это лишь небольшой пример из всего моего кода, но я должен сделать это с большим количеством имен, так что я не может просто помещать пробелы по строкам. Есть ли способ связать, сколько пробелов вводить в соответствии с каждым циклом?

ответ

3

простой, первый сделать его печати заявление (не Println, что делает новую строку в конце), то конкатенировать строку, содержащую 1 место в конце, как это:

System.out.print("Hello, my name is " + names[i] + " "); 

EDIT так что вы хотите сделать, это распечатать заявление, как это, то петля через снова в текущем цикле и печати пространств числа раз, как текущий номер цикла, например:

names[4] = "bob", "mark", "james", "frank"; 

for (int i = 0; i < 4; i++) 
{ 

    for(int k = 0; k < i; k++) 
    { 
    System.out.print(" "); 
    } 

    System.out.println("Hello, my name is " + names[i]); 
} 

EDIT более плавный способ сделать это.

names[4] = "bob", "mark", "james", "frank"; 
String space = ""; 

for (int i = 0; i < 4; i++) 
{ 
    System.out.println(space + "Hello, my name is " + names[i]); 
    space += " "; 
} 

Надеюсь, это было полезно. : D

+0

А я вижу. Так вот как это сделать. Спасибо ^^ –

+0

Я изменил свой пост, я добавил более чистый способ сделать это, это быстрее, чем предыдущий, если это вызывает беспокойство. – yoseph1998

1

Вот немного более изящный способ сделать это:

names[4] = "bob", "mark", "james", "frank"; 
spaces = "    "; // as many as necessary. 

for (int i = 0; i < 4; i++) { 
    System.out.println(spaces.substring(0, i) + 
         "Hello, my name is " + names[i]); 
} 
+0

Благодарим вас также ^^ –

+0

Upvotes - это хороший способ сказать «thankyou» :-) –

+0

это не так приятно, так как если он добавит больше имен, то пробелы он не будет работать, и вы получите ошибки во время выполнения (да, вы может добавить больше пробелов, но это очень дрянной и не динамический вообще) – yoseph1998

Смежные вопросы