Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 列表数组中的字符串生成器,如何在每个元素后添加空格/换行符?_Android_Arraylist_Stringbuilder - Fatal编程技术网

Android 列表数组中的字符串生成器,如何在每个元素后添加空格/换行符?

Android 列表数组中的字符串生成器,如何在每个元素后添加空格/换行符?,android,arraylist,stringbuilder,Android,Arraylist,Stringbuilder,我已经从数据库列创建了一个数组列表,我想去掉方括号,并以新行或间隔显示每个元素。我正在使用字符串生成器尝试这样做,这段代码的问题是它将所有元素添加到字符串中。有人能帮我吗 这是我的密码: Cursor cursor2 = data.IngredientfetchRows(ID); startManagingCursor(cursor2); //cursor2.moveToFirst(); ArrayList<String> al = new ArrayList<String&

我已经从数据库列创建了一个数组列表,我想去掉方括号,并以新行或间隔显示每个元素。我正在使用字符串生成器尝试这样做,这段代码的问题是它将所有元素添加到字符串中。有人能帮我吗

这是我的密码:

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);
Cursor cursor2=data.IngredientfetchRows(ID);
开始管理游标(游标2);
//游标2.moveToFirst();
ArrayList al=新的ArrayList();
游标2.moveToFirst();
而(!cursor2.isAfterLast()){
//Log.d(“,”+cursor.getString(cursor
//.getColumnIndex(ProfileDbAdapter.KEY_PROFILE_NAME));
String mingreditentname=cursor2.getString(1);
al.add(mingreditname);
游标2.moveToNext();
}
StringBuilder=新的StringBuilder();
for(字符串值:al){
附加(值);
}
String text=builder.toString();
Speech.setText(文本);
data.close();
//+“”+cursor.getString(2)+“”+cursor.getString(3)
initSpeak();
语音按钮(StartSpeech);
最简单的解决方案:

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

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

你可以这样做

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

如果您不介意列表末尾的换行符:

StringBuilder builder = new StringBuilder();
for (String value : al) {
    builder.append(value).append('\n');
}