【问题标题】:Get String in a single or double line from ArrayList using string Buffer使用字符串缓冲区从 ArrayList 中获取单行或双行中的字符串
【发布时间】:2018-04-19 11:49:39
【问题描述】:

我有一个包含一些元素的ArrayList,我正在使用字符串缓冲区来获取字符串。但是当我打印字符串时,我进入了杂乱无章的行。我想进入单线或双线。

  ArrayList<String> mCombinedList; // it contains some value I have already instantiate it  
    StringBuilder builder = new StringBuilder();
    for (String singleLine : mCombinedList) {
        if (builder.length() > 0) {
            builder.append(" ");
        }
        builder.append(singleLine);

        }
    String string = builder.toString();
    Log.e(TAG, "string builder "  +string );

实现此代码后,我在日志中得到了这个结果。

阿卜杜勒贾尼 456 朋友用户 3 721015*** 朋友

**mCombinedList 的ArrayList 值; **

[阿卜杜勒·贾尼 456 朋友,用户 3 721015*** 朋友]

【问题讨论】:

  • 显示您的mCombinedList 数据
  • 试试builder.append(singleLine.trim());
  • mCombinedList 中是否有空字符串或仅由空格组成的字符串?然后你应该过滤掉它们。
  • 它的 ArrayList 不是 ArraList
  • @NileshRathod 它的错字

标签: java android string stringbuilder


【解决方案1】:

在使用 StringBuilder 构建字符串的最后阶段,当您收集所有字符串后,只需调用此正则表达式即可删除所有大于 2 的空格,这将清除所有引入的额外空格清空源数组列表中的字符串

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

【讨论】:

  • 请解释这个答案
  • 它可以正常工作,但是如何在项目之间添加逗号。
  • String string = builder.toString().replaceAll("\\s{2,}", ",").trim();
  • 我得到 abdul jani ,456 ,Friend User 3 ,721015*** ,Friend 在代码中添加逗号后
  • 这不是你需要的吗?
【解决方案2】:

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]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    • 2019-04-10
    • 1970-01-01
    相关资源
    最近更新 更多