拼凑字符串时,去除末尾多余字符的几个方法


title: 拼凑字符串时,去除末尾多余字符的几个方法
date: 2018-08-17 22:12:58
tags: [Java,方法]
---

在拼接字符串的时候,经常会发现多了,不想要的字符,让人很是烦恼,这下面总结三个可以去掉烦恼的方法。

//循环生成json格式数据
public static String CreateJson() {
        String json="{\"content\":[";
        for(int i=0;i<5;i++) {
            json+="{\"value\":"+i+"},";
        }
        json+="]}";
        return json;
    }
上面的代码生成的json格式数据(最后多了一个逗号):
{
    "content": [{
        "value": 0
    }, {
        "value": 1
    }, {
        "value": 2
    }, {
        "value": 3
    }, {
        "value": 4
    },]
}

方法一:若已知循环的次数,则可以通过if判断解决:

public static String CreateJson() {
        String json="{\"content\":[";
        for(int i=0;i<5;i++) {
            json+="{\"value\":"+i+"}";
             //以知循环的次数,如是数组集合,知道长度就能处理
            if(i<4) {
                json+=",";
            }
        }
        json+="]}";
        return json;
    }

方法二:使用subString截取字符串:

public static String CreateJson() {
        String json="{\"content\":[";
        for(int i=0;i<5;i++) {
            json+="{\"value\":"+i+"},";
            //subString截取第0个至最后减一
            json=json.substring(0, json.length()-1);
        }
        json+="]}";
        return json;
    }

方法三:将String类型转换为StringBuffer,再删除

public static String CreateJson() {
        String json="{\"content\":[";
        for(int i=0;i<5;i++) {
            json+="{\"value\":"+i+"},";
        }
        json+="]}";
        //将String转换为StringBuffer
        StringBuffer buffer = new StringBuffer(json);
        //删除逗号
        buffer.delete(buffer.length()-3, buffer.length()-2);
        //再将StringBuffer转换为String
        json = new String(buffer);
        return json;
    }

总结:方法一和方法二都还是比较常用的,不过个人感觉方法二在处理很长的字符串时可能会效率不高,方法三就感觉略有麻烦了。

猜你喜欢

转载自www.cnblogs.com/flytree/p/11622642.html
今日推荐