Java拼接字符串数组并切分还原【设置容错率较高的分隔符】

1. 要求

把n个字符串拼接成一个字符串,再把这个字符串切分还原回n个字符串。字符串包含各种符号,直接使用英文逗号分隔会导致之后还原错误。

2. 方法

设置分隔符,这里我设置了一个较特别的分隔符[[SEP]],想着应该不会出现这种字符串

private String separator = "[[SEP]]";

拼接字符串:String自带的join方法。使用字符串separator来分隔list中的每个字符串

public String joiner(String list[]){
    return String.join(separator, list);
}

切分字符串:String对象自带的split方法。传入参数要求正则表达式,使用双斜杠来转义[和]。因为这两个方括号本身属于正则表达式的语法规则。

public String[] splitter(String s){
    return s.split("\\[\\[SEP\\]\\]");
}

完整代码

public class test3 {
    private String separator = "[[SEP]]";

    public static void main(String[] args) {
        String list1[] = {"1,,", "2\\/\\", "3:,fg"};
        System.out.println("----原始字符串----");
        for (String ss: list1){
            System.out.println(ss);
        }

        test3 t = new test3(); // 初始化对象
        System.out.println("----拼接后----");
        String s = t.joiner(list1); // 连结字符串
        System.out.println(s);

        System.out.println("----切分后----");
        String list2[] = t.splitter(s);
        for (String ss: list2){
            System.out.println(ss);
        }

    }

    public String[] splitter(String s){
        return s.split("[\\[][\\[]SEP[\\]][\\]]");
    }

    public String joiner(String list[]){
        return String.join(separator, list);
    }
}

3. 测试结果

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Toblerone_Wind

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值