StringJoiner操作字符串

一、 简介:

StringJoiner是Java 8新增的一个API,他是基于StringBuilder实现,用于实现对字符串之间通过分隔符拼接的场景。
例如下面采用StringBuilder写的一个用于将数组[1, 2, 3, 4]以这样的形式打印出来

public class StringJoinerTest2 {
    public static void main(String[] args) {
        int[] arry={1,2,3,4};
        StringBuilder sb = new StringBuilder();
        sb.append("[");
        for (int i = 0; i < arry.length; i++) {
            //判断是否是数组中的最后一个元素
            if(i!=arry.length-1){
                sb.append(arry[i]+", ");
            }
            else {
                sb.append(arry[i]+"]");
            }
        }
        System.out.println(sb);

    }
}

最后打印出sb为[1, 2, 3, 4]
但是使用StringBuilder类进行这种带有分隔符“,”的形式写起来会非常麻烦,还要进行判断
因此jdk8中出现StringJoiner类专门用于解决此问题

二、StringJoiner中的构造方法

public StringJoiner(间隔符号):创建一个StringJoiner对象,指定拼接时的间隔符号

public class StringJoinerTest3 {
    public static void main(String[] args) {
        StringJoiner sj = new StringJoiner("---");
        sj.add("1").add("2").add("3");
        System.out.println(sj); //1---2---3
    }
}

只是指定了拼接时候的间隔符,因此打印出来的为:1—2—3

public StringJoiner(间隔符号,开始符号,结束符号):创建一个StringJoiner对象,指定拼接时的间隔符号,开始符号和结束符号

public class StringJoinerTest3 {
    public static void main(String[] args) {
        StringJoiner sj = new StringJoiner("---","[","]");
        sj.add("1").add("2").add("3");
        System.out.println(sj); //[1---2---3]
    }
}

构造方法中添加了间隔符,开始与结束符,所以打印出的字符串带有开始和结束符号:[1—2—3]

三、StringJoiner中的成员方法

public StringJoiner add(添加的内容):添加数据,并返回对象本身
public int length():返回长度(字符出现的个数)
public String toString():返回一个字符串,该字符串时拼接后的额结果

public class StringJoinerTest3 {
    public static void main(String[] args) {
        StringJoiner sj = new StringJoiner("---","[","]");
        sj.add("1").add("2").add("3");
        System.out.println(sj); //[1---2---3]

        String str = sj.toString();
        System.out.println(str);    //[1---2---3]
    }
}

sj是StringJoiner类型,将sj转换为字符串String类型str便可以使用字符串类型中的相关方法了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值