String Builder из List Array, как добавить пробел / символ новой строки после каждого элемента? - PullRequest
0 голосов
/ 14 декабря 2011

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

Вот мой код:

Cursor cursor2 = data.IngredientfetchRows(ID);
startManagingCursor(cursor2);
//cursor2.moveToFirst();

ArrayList<String> al = new ArrayList<String>();
cursor2.moveToFirst();
while(!cursor2.isAfterLast()) {
    //  Log.d("", "" + cursor.getString(cursor
    //                  .getColumnIndex(ProfileDbAdapter.KEY_PROFILE_NAME)));
    String mIngredientName = cursor2.getString(1);
    al.add(mIngredientName);
    cursor2.moveToNext();
}

StringBuilder builder = new StringBuilder();
for (String value : al) {
    builder.append(value);
}
String text = builder.toString();

Speech.setText(text);

data.close();
// + " " + cursor.getString(2) + "" + cursor.getString(3)
initSpeak();
speakButtons(StartSpeech);

Ответы [ 3 ]

1 голос
/ 14 декабря 2011

Если вы не против новой строки в конце списка:

StringBuilder builder = new StringBuilder();
for (String value : al) {
    builder.append(value).append('\n');
}
0 голосов
/ 14 декабря 2011

вы можете сделать что-то вроде этого

StringBuilder builder = new StringBuilder();
      for (String value : al) {
             builder.append(value + " ");
          }
         String text = builder.toString();
0 голосов
/ 14 декабря 2011

Самое простое решение:

final static String BREAK = ", "; //Defined somewhere practical.

for (String value : al) {
    builder.append(value);
    builder.append(BREAK);
}
...