美文网首页
将List某一字段根据特定分隔符进行拼接

将List某一字段根据特定分隔符进行拼接

作者: 一介书生独醉江湖 | 来源:发表于2022-04-18 14:34 被阅读0次
package com.example.favoritecode;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.stream.Collectors;

/**
 * @Author ds
 * @Date 2022-04-18
 */
public class StringUtil {

    public static void main(String[] args){
        List<Fruit> list = new ArrayList<>(8);
        list.add(new Fruit("苹果1","香蕉1"));
        list.add(new Fruit("苹果2","香蕉2"));
        list.add(new Fruit("苹果3","香蕉3"));
        List<String> collect = list.stream().map(Fruit::getApple).collect(Collectors.toList());
        String apples = StringUtil.join(collect, "、");
        System.out.println("apples : " + apples);
    }

    public static String join(Collection collection, String separator) {
        if (collection == null) {
            return null;
        } else if (collection.size() == 0) {
            return "";
        } else {
            StringBuilder sb = new StringBuilder(collection.size() * 16);
            Iterator it = collection.iterator();

            for(int i = 0; i < collection.size(); ++i) {
                if (i > 0) {
                    sb.append(separator);
                }

                sb.append(it.next());
            }

            return sb.toString();
        }
    }


    private static class Fruit{

        private String apple;
        private String banana;

        public Fruit(String apple, String banana) {
            this.apple = apple;
            this.banana = banana;
        }

        public String getApple() {
            return apple;
        }

        public void setApple(String apple) {
            this.apple = apple;
        }

        public String getBanana() {
            return banana;
        }

        public void setBanana(String banana) {
            this.banana = banana;
        }
    }

}
打印:
apples : 苹果1、苹果2、苹果3

相关文章

网友评论

      本文标题:将List某一字段根据特定分隔符进行拼接

      本文链接:https://www.haomeiwen.com/subject/gysdertx.html