2016-11-11 1 views
0

Я распечатываю элементы из списка массивов, и я хочу иметь «->» между каждым словом, кроме последнего слова. Мой текущий код, как показано ниже:Как удалить последний «->» в слове ladder

for(int m = result.size()-1; m > -1; m--) 
{ 
    System.out.print(result.get(m) + " -> "); 
} 

Фактический выход из моего кода:

Path of word ladder: abase -> abash -> 

Ожидаемый результат:

Path of wordladder: abase -> abash 
+1

Задайте себе этот вопрос: На основании приведенного выше кода, в каком состоянии вы думаете, что должно быть правдой для того, чтобы быть «последним» слово? – rmlan

+0

Ну, почему бы вы не ожидали, что у него будет только одна стрелка? Каждый раз, когда вы печатаете что-либо, вы печатаете элемент 'result' и стрелку ... –

+2

Если вы используете Java 8, используйте' StringJoiner' – pathfinderelite

ответ

0

Для любых версий Java:

System.out.print(result.get(m) + (m==0?"":" -> ")); 
+0

, не могли бы вы объяснить 'm == 0?" ":" ' – user7146946

+0

Not проблема: это встроенная альтернатива оператору if. Следующие эквиваленты: – Vadim

+0

Строка letter = m == 0? "a": "b"; – Vadim

0

В вашей петле, простой, если cond ition мог справиться с этим один случай:

if (m==0) 
System.out.print(result.get(m)); 

else 
System.out.print(result.get(m) + " -> "); 
+0

. Вы не забыли другое? –

+0

Да, пропустил это. Спасибо, что указали это. – hammad2506

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