求助!如何把List字符串数组按照规律拼接从字符串

榨菜君 2022-07-04 10:23:18

有如下的字符串列表 ,他的规律是:部分逗号分隔符前与分隔符后的相同

 List<String> list= new ArrayList<>();
 list.add("2222abcd,5555abcd");
 list.add("6666abcd,1111abcd");
 list.add("5555abcd,6666abcd");
 list.add("1111abcd,7777abcd");

现在要把这个list转换成字符串,目标如下

"2222abcd,5555abcd,6666abcd,1111abcd,7777abcd"

 

...全文
1895 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Kingdeguo 2022-09-17
  • 打赏
  • 举报
回复

public static void main(String[] args) {

        List<String> list = new ArrayList<>();
        list.add("2222abcd,5555abcd");
        list.add("6666abcd,1111abcd");
        list.add("5555abcd,6666abcd");
        list.add("1111abcd,7777abcd");

        Set<String> collect = list.stream()
                .map(item -> item.split(","))
                .flatMap(Arrays::stream)
                .collect(Collectors.toSet());
        System.out.println(collect.toString().replaceAll("[\\[\\]]", "\""));
    }
  • 打赏
  • 举报
回复

    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("2222abcd,5555abcd");
        list.add("6666abcd,1111abcd");
        list.add("5555abcd,6666abcd");
        list.add("1111abcd,7777abcd");
        String str = list.toString().replace(" ","");
        System.out.println(str);
    }
  • 打赏
  • 举报
回复

    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        String str = "";
        list.add("2222abcd,5555abcd");
        list.add("6666abcd,1111abcd");
        list.add("5555abcd,6666abcd");
        list.add("1111abcd,7777abcd");
        for (int i = 0; i < list.size(); i++) {
            if (i < list.size() - 1) {
                str += list.get(i) + ",";
            } else {
                str += list.get(i);
            }
        }
        System.out.println(str);
    }
  • 打赏
  • 举报
回复


 public static void main(String[] args) {
        List<String> list= new ArrayList<>();
        list.add("2222abcd,5555abcd");
        list.add("6666abcd,1111abcd");
        list.add("5555abcd,6666abcd");
        list.add("1111abcd,7777abcd");
        HashSet<String> strings = new HashSet<>();
        for (String s : list) {
            String[] split = s.split(",");
            strings.addAll(Arrays.asList(split));
            System.out.println(strings);
        }
        System.out.println(strings);
    }
qq_29673919 2022-07-06
  • 打赏
  • 举报
回复
public static void main(String[] args) {
             List<String> list= new ArrayList<>();
              list.add("2222abcd,5555abcd");
            list.add("6666abcd,1111abcd");
          list.add("5555abcd,6666abcd");
          list.add("1111abcd,7777abcd");

        //输出结果
        String a = "";

        //循环数据
        for (String s : list) {
            if(a.equals("")){
                a = s;
            }else{
                //对需要拼接的数据拆分
                String[] split = s.split(",");
                //循环判断需要拼接的数据
                for (String s1 : split) {
                    //判断已拼接的结果中是否包含,不包含拼接
                    if(!a.contains(s1)){
                        a = a + "," + s1;
                    }
                }
            }
        }
        System.out.println("a = " + a);
    }

img

51,408

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧