StringBuffer.deleteCharAt()方法

原创 2016年08月29日 19:46:01

在和风天气的json数据解析中,数据开头是这样的数据

{ "HeWeather data service 3.0": [
        {
            "aqi": {
            ....

这样导致Android Studio 的GsonFormat方法失败,这是因为数据”HeWeather data service 3.0”的空格和3.0导致,那就删除吧,之后考虑解析的数据要和Bean类匹配,要对接收的json数据也要把空格删除.
参考http://www.cnblogs.com/YouknowGTJ/p/5243695.html博客发现

sbf.deleteCharAt(11);
sbf.deleteCharAt(15);
sbf.delete(22,26);

StringBuffer删除的位置很奇怪,11,15和22–26

{"HeWeather data service 3.0"
0123456789
         10
          11

11的位置是空格,但是下一个空格是16
最后发现,原来,删除了第一个空格后,数据是这样了

{"HeWeatherdata service 3.0"

下一个空格自然是15了


以下是网上StringBuffer.deleteCharAt()的资料

描述

java.lang.StringBuffer.deleteCharAt() 在这个序列中的指定位置删除字符。此序列是由一个char缩短

声明

以下是声明java.lang.StringBuffer.deleteCharAt()方法

public StringBuffer deleteCharAt(int index)

参数

  • index – 这是该指数的字符删除

返回值

此方法返回此对象
异常

StringIndexOutOfBoundsException --如果该索引是负值或大于或等于 length().

实例

下面的例子说明了如何使用

java.lang.StringBuffer.deleteCharAt()方法

package com.yiibai;

import java.lang.*;

public class StringBufferDemo {

  public static void main(String[] args) {

    StringBuffer buff = new StringBuffer("Java lang package");
    System.out.println("buffer = " + buff);

    // deleting character from index 4 to index 9
    buff.delete(4, 9);
    System.out.println("After deletion = " + buff);

    buff = new StringBuffer("amit");
    System.out.println("buffer = " + buff);
    // deleting character at index 2
    buff.deleteCharAt(2);
    System.out.println("After deletion = " + buff);
  }
}

让我们来编译和运行上面的程序,这将产生以下结果:

buffer = Java lang package
After deletion = Java package
buffer = amit
After deletion = amt
版权声明:本文为博主原创文章,未经博主允许不得转载。

java StringBuffer类型删除最末位字符(使用deleteCharAt方法)

StringBuffer userBuffer= new StringBuffer(); userBuffer.append("userId_1"); userBuffer.append(";")...
  • smqh2015
  • smqh2015
  • 2015年11月30日 13:59
  • 2301

StringBuffer的delete方法与deleteCharAt的区别!!!

前言:记录自己在工作中遇到的小问题,积少成多!因为是新手,有什么写的不好的地方还希望大家能够指出来。有什么更好的解决方法也希望大家能提出来,一起交流分享!(小弟在这里先谢谢大家) 1、介绍 del...
  • xyq286654901
  • xyq286654901
  • 2017年05月25日 16:53
  • 925

NYOJ19,擅长排列的小明,StringBuffer.deleteCharAt()

擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述小明十分聪明,而且十分擅长排列计算。比如给小明一个数字5,他能立刻给出1-5按字典...
  • u011572579
  • u011572579
  • 2014年08月09日 11:24
  • 556

常见对象_StringBuffer的删除功能

package cn.itcast_03; /* * StringBuffer的删除功能 * public StringBuffer deleteCharAt(int index):删除指定...
  • L1585931143
  • L1585931143
  • 2016年11月14日 20:42
  • 736

[每日问答]生成方法和判别方法有什么区别?

生成方法和判别方法有什么区别?
  • cloud_xiaobai
  • cloud_xiaobai
  • 2017年05月16日 10:14
  • 223

java8 - 方法引用(method referrance)

方法引用的概念        某些lambda表达式里面仅仅是执行一个方法调用。在这种情况下,不用lambda表达式,直接通过方法名称引用方法的形式可读性更高一些,这种形式就是方法引用,方法引用是一...
  • wwwsssaaaddd
  • wwwsssaaaddd
  • 2014年07月08日 21:04
  • 10314

lua 元方法

事件名与元方法 仅表(table)类型值对应的元表可由用户自行定义。其他类型的值所对应的元表仅能通过 Debug 库进行修改。 元表中的事件名均以两条下划线 __ 作为前缀,元表支持的事件...
  • yangzhenzhen
  • yangzhenzhen
  • 2016年04月24日 14:39
  • 1665

方法与函数

我们之前在C中学习的函数,就叫做函数. void test() { } 在OC类中写的方法.就叫做方法. - (void)sayHi; 相同点:都是用来封装1段代码的. 将1段...
  • yi_zz32
  • yi_zz32
  • 2015年09月20日 21:43
  • 1403

HTTP Servlet 重要的几个方法

HTTP Servlet继承了GencenServlet类    GencenServlet实现了两个接口··一个用于ServletConfig设置接口,一个为Servlet接口只要是(1) init...
  • besttaling
  • besttaling
  • 2009年10月27日 16:10
  • 12334

Python的方法定义

常用的方法定义方法在OOP中会经常用到,减少代码的冗余,作为一门面向对象的语言,Python自然也有自己的方法定义。那么怎样在Python中定义一个方法呢,很简洁的方法:define function...
  • cnpython
  • cnpython
  • 2011年02月18日 09:49
  • 15615
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:StringBuffer.deleteCharAt()方法
举报原因:
原因补充:

(最多只允许输入30个字)