StringUtils.join方法使用

1 应用场景

在实际开发中,经常会遇到需要将数组/集合的数据进行拼接,并以“,”逗号隔开的场景。这时候使用StringUtils.join方法就非常方便。它可以将数组或集合以某拼接符拼接到一起形成新的字符串。

2 使用对比

以下使用StringBuilder和StringUtils.join方法,对比同种拼接场景下,代码书写情况。

import org.apache.commons.lang3.StringUtils;

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        List<String> names = new ArrayList<>();
        names.add("张三");
        names.add("李四");
        names.add("王五");

        // 使用 StringBuilder 进行拼接
        StringBuilder stringBuilder = new StringBuilder();
        names.forEach(name -> {
            stringBuilder.append(name).append(",");
        });
        // 拼接完成后还需要将最后一个逗号去掉
        String substr = stringBuilder.substring(0, stringBuilder.lastIndexOf(","));
        System.out.println("使用 StringBuilder 进行拼接:" + substr);

        // 使用 StringUtils.join 方法
        String join = StringUtils.join(names, ",");
        System.out.println("使用 StringUtils.join 进行拼接:" + join);
    }
}

输出结果:

使用 StringBuilder 进行拼接:张三,李四,王五
使用 StringUtils.join 进行拼接:张三,李四,王五

从以上两种处理方式中,可以明显看到StringUtils.join的好用之处!!!

3 使用方法

  • 引入依赖
    需要引入apache的commons lang3的依赖:
           <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>3.9</version>
            </dependency>
  • 直接调用方法使用

join提供的传参方式很多,以下只截取其中一部分,其他的大家自己看吧,根据实际场景选择适合的使用。

在这里插入图片描述

  • 使用示例
    public static void main(String[] args) {
        List<String> names = new ArrayList<>();
        names.add("张三");
        names.add("李四");
        names.add("王五");

        System.out.println(StringUtils.join(names, ","));
        System.out.println(StringUtils.join(names, "&"));
        System.out.println(StringUtils.join(names, "和"));


        String[] product = new String[]{"手机", "耳机", "电脑"};
        System.out.println(StringUtils.join(product, " "));
    }

输出结果:

张三,李四,王五
张三&李四&王五
张三和李四和王五
手机 耳机 电脑
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐