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



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;
    }

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

原文地址:https://www.cnblogs.com/flytree/p/11622642.html

时间: 2024-10-10 07:55:27

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

BigDecimal去除末尾多余的0

Java有自带的 stripTrailingZeros() 方法用于去除末尾多余的0 BigDecimal num = new BigDecimal("100.1000"); BigDecimal numNoEndZero = num.stripTrailingZeros(); //numNoEndZero :1E+2 System.out.println(numNoEndZero.toString()); 按上面的方法输出结果,会显示科学计数法,所以需要处理一下,解决方法: Stri

关于在字符串中查找某一个字符的位置的方法

一:准备 在程序的开始,我们可以确定使用一些知识点: indexof,lastIndexOf,StringBuilder. 二:程序 public class IndexOfDemo { @Test public void test1(){ String str="agyyayyaooea"; int posi,x=0; int lastPosi=str.lastIndexOf("a"); StringBuilder sb=new StringBuilder();

去除字符串内的一些额外字符方法

在处理String对象时,有时候需要去除一些额外的字符,如:空格等 主要的方法: string.Trim() 常用 无参默认去除字符串两端的空格,多个空格也能一次性去掉:但是注意只是两段,内部无法控制!! string.Trim(char [])    当有多个特定字符需要去除的时候,用这种方法 string.TrimStart( char c) 不常用  针对字符串首端去除指定标记 string.TrimStart( char []) 针对字符串首端去除指定标记组 string.TrimEnd

C#分隔字符串时遭遇空值

在C#中分隔字符串时,按特定字符进行分隔的时候可能会遇到空值,如何我现在传入的是Id的字符串,如:"1501,1502,1503,,1505",以逗号分隔,由于各种原因,导致传入的字符串中有连续的逗号,如果我要利用这一串字符串得到ID数组作为Sql查询的条件,那么我就必须对这种情况进行处理. 实例: //数组转换成字符串,字符串切割成数组.string[] array = new[] {"1m2", "", "ww", &qu

去除下载电影和电视剧文件名中的多余字符[python实现]

讨厌下载电影和电视剧文件名中的多余字符(如网址和广告字样),,搞得文件名好长,可以使用下面的Python代码,自行修改即可. [python] view plaincopy #!\usr\bin\env python # -*- coding: utf-8 -*- # Author: 吴徐平 # FileName: RefineFileName.py # Function: # 下载的电影电视文件名太长, # 常常含有多余的字符,如'中英双字幕', # 可以使用本Python代码去掉 # Usi

去除字符串中连续重复的字符

目的:把字符串中连续重复的字符赐除掉. 输入:序列:kkkhan888shioobo66 正确的返回结果应该是:hanshibo 思路解析 1 使用JAVA正则表达式,匹配出连续相同的字符或数字. 2 查找出匹配出来的序列,并取出来放到list里面 3 对list进行排序.把重复的序列排在前面.(该步可省略) 4找出连续重复的子序列,并把这些连续重复的子序列用空(字字符串)替换. 5 返回输出. code public class Test { public static void main(S

指针指向整数,字符,及字符串时,相应地址取法

指针指向整数时: 1 #include <iostream> 2 3 int main(void) 4 { 5 using namespace std; 6 int a = 10; 7 int *p = &a; 8 9 cout << "sizeof(p) = " << sizeof(p) << endl; 10 cout << "sizeof(&p) = " << sizeof

去除字符串两端的空格和字符

1 # -*- coding: utf-8 -*- 2 """ 3 去除字符串两端的空格和字符 4 lstrip().rstrip().strip() 5 返回字符串的拷贝 6 """ 7 x = ' aaa ' 8 9 print '|',x.lstrip(),'|',x.rstrip(),'|',x.strip(),'|' 10 # Output: | aaa | aaa | aaa | 11 12 x = 'xyxxyy hejyx yyx

C# 移除字符串末尾指定字符

#region 移除字符串末尾指定字符 /// <summary> /// 移除字符串末尾指定字符 /// </summary> /// <param name="str">需要移除的字符串</param> /// <param name="value">指定字符</param> /// <returns>移除后的字符串</returns> public static s