2013-04-04 3 views
1

Я создаю игру палача, а длинный рассказ короткий, есть ли ярлык для сортировки этого массива отдельных строк в строку, отличную от приведенной ниже?Добавить элементы массива в строку

String after = under[0] + under[1] + under[2] + under[3] + under[4] + under[5] + under[6] + under[7] + under[8] + under[9] + under[10] + under[11] + under[12] + under[13] + under[14] + under[15] + under[16] + under[17] + under[18] + under[19] + under[20] + under[21]; 
+6

когда-либо слышал о петлях? –

+0

Если вы можете получить дополнительную библиотеку, [Apache Commons Lang] (http://commons.apache.org/proper/commons-lang/) имеет класс StringUtils, который позволит вам сделать это 'String after = StringUtils.join (под, ''); '. – Perception

+0

@Bartdude Эй, это не приятно ... Люди не слышат о петлях сразу. Я узнал о циклах, когда мне надоело вводить один и тот же код десять-пятнадцать раз, каждый раз меняя цифры или два :) :) :) – dasblinkenlight

ответ

2

Вы можете сделать это с петлей, как это:

StringBuilder sb = new StringBuilder(); 
for (int i = 0 ; i != 22 ; i++) { 
    sb.append(under[i]); 
} 
String after = sb.toString(); 

Вы также можете добавить строки в первоначально пустую строку, но это неоптимальное, поскольку все промежуточные строки получить выделены и выпущены в петля.

0

попробовать:

String after = ""; 

for (int i=0; i<22; i++) 
    after += under[i]; 
1

Всегда использовать цикл для выполнения повторяющейся операции, как это.

Кроме того, рекомендуется использовать StringBuilder вместо String. Строка в JAVA неизменна.

StringBuilder sb = new StringBuilder(); 
int nCount = 22; 

for (int iCnt = 0 ; iCnt <= nCount ; iCnt++) { 
    sb.append(under[iCnt]); 
} 
String after = sb.toString(); 
0

Этот код не короче, но менее утомительным:

StringBuilder afterBldr = new StringBuilder(); 
for (String underEl : under) { 
    afterBldr.append(underEl); 
} 
String after = afterBldr.toString(); 
0

Если у вас есть доступ к Apache Commons библиотеке, используйте метод join(), это приятное решение:

String str = StringUtils.join(under, ""); 
0

Apache Joiner можно использовать здесь.

Joiner.on("").join(names) 
Смежные вопросы