使用字符串Buffer从ArrayList获取单行或双行字符串

时间:2018-04-19 11:49:39

标签: java android string stringbuilder

我有一个Date包含一些元素,我使用String Buffer来获取字符串。但是,当我打印字符串时,我进入无组织的行。我想进入单线或双线。

ArrayList

实现此代码后,我在Log中获得此结果。

abdul jani
                                                                         456
                                                                            Friend   User 3
                                                                          721015***
                                                                            Friend

** mCombinedList的ArrayList值; **

 [  abdul jani
                                                                            456
                                                                              Friend,   User 3
                                                                            721015***
                                                                              Friend]

2 个答案:

答案 0 :(得分:1)

在使用StringBuilder进行String构建的最后阶段,当您收集了所有字符串时,只需调用此正则表达式以删除所有超过2的空白区域,这将清除所有已引入的空白区域。在源arraylist中清空字符串

String string = builder.toString().replaceAll("\\s{2,}", " ").trim();

答案 1 :(得分:0)

您正在builder.append(" ");添加大量空格。使用ArrayList.toString()可以解决您的问题。

package com.test;

import java.util.ArrayList;

public class ListToString {

    public static void main(String[] args) {
        ArrayList<String> mCombinedList = new ArrayList<>();
        mCombinedList.add("abdul jani");
        mCombinedList.add("456");
        mCombinedList.add("Friend");
        mCombinedList.add("User");
        mCombinedList.add("3");
        mCombinedList.add("721015****");
        mCombinedList.add("Friend");

        String string = mCombinedList.toString();
        //System.out.println(string);
        Log.e(TAG, "string builder "  +string );
    }

}

输出:

[abdul jani, 456, Friend, User, 3, 721015****, Friend]