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

Posted flytree

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了拼凑字符串时,去除末尾多余字符的几个方法相关的知识,希望对你有一定的参考价值。


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;
    

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

以上是关于拼凑字符串时,去除末尾多余字符的几个方法的主要内容,如果未能解决你的问题,请参考以下文章

Python去除字符串的空格

ACM基础题 - 去除字符序列中的几个字符

StringBuilder 去除最后一个多余的字符的方法

字符串中去除多余的空格保留一个(C#)

CSV文件去除每行多余字符

CSV文件去除每行多余字符