review19
StringBuffer类
String类创建的字符串对象是不可修改的,也就是说,String字符串不能修改、删除或替换字符串中的饿某个字符,即String对象一旦创建,那么实体是不可以再发生变化的。
而StringBuffer类创建可修改的字符串序列,也就是说,该类对象的实体的内存空间可以自动地改变大小。
StringBuffer类中的方法主要偏重于对于字符串的变化,例如追加、插入和删除等。
StringBuffer对象调用append方法可以追加字符序列,例如:
public class Test08 {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        StringBuffer sb = new StringBuffer("我喜欢");
        System.out.println(sb);
        sb.append("打篮球");
        System.out.println(sb);
    }
}
运行结果如下所示:

StringBuffer类有三个构造方法,
StringBuffer()
StringBuffer(int size)
StringBuffer(String s)
第一个无参数的构造方法创建一个StringBuffer对象,分配给该对象的实体的初始容量是16个字符
第二个构造方法创建的对象分配给该实体的容量是size个字符
第三个构造方法创建的对象分配给该实体的容量是s的长度加上16个字符
通过capacity()方法我们可以知道当前实体的实际容量。
append方法
StringBuffer append(String s):将一个字符串对象追加到当前StringBuffer对象中,并返回当前StringBuffer对象的引用。
StringBuffer append(int n):将一个int型数据转化为字符串对象再追加到当前StringBuffer对象中,并返回当前StringBuffer对象的引用。
StringBuffer append(Object o):将一个Object对象的字符串表示追加到当前StringBuffer对象中,并返回当前StringBuffer对象的引用。
public char charAt(int n)得到参数n指定的位置上的单个字符
public void setCharAt(int n, char ch) 将StringBuffer对象n位置上的字符用ch替代
StringBuffer insert(int index, String str) StringBuffer对象使用insert方法将参数str指定的字符串插入到参数index指定的位置。
public StringBuffer reverse() StringBuffer对象使用reverse()方法将对象实体中的字符翻转,并返回当前对象的引用。
StringBuffer delete(int startIndex, int endIndex) 从当前StringBuffer对象实体中的字符串中删除一个子字符串,并返回当前对象的引用。
StringBuffer replace(int startIndex, int endIndex, String str) 将当前StringBuffer对象实体中的字符串的一个子字符串用参数str指定的字符串替换。
从startIndex到endIndex-1的字符串被替换。
上述方法使用情况如下所示:
public class Test09 {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        StringBuffer sb = new StringBuffer();
        sb.append("大家好");
        //str.append("大家好");
        System.out.println("sb:" + sb);
        System.out.println("sb的容量:" + sb.capacity());
        StringBuffer sb1 = new StringBuffer("大家好");
        System.out.println("sb1:" + sb1);
        System.out.println("sb1的容量:" + sb1.capacity());
        sb.setCharAt(0, 'w');
        sb.setCharAt(1, 'e');
        System.out.println(sb);
        sb.insert(2, " are all");
        System.out.println(sb);
        int index = sb.indexOf("好");
        sb.replace(index, sb.length(), "right");
        System.out.println(sb);
    }
}
运行结果如下所示:

review19的更多相关文章
随机推荐
- MySQL root用户忘记密码怎么办?修改密码方法:skip-grant-tables
			
忘记密码怎么办? 1.以管理员身份打开cmd2.执行命令tasklist |findstr mysql ,查看正在运行的mysql进程 3.执行命令taskkill /F /PID 13644(此处进 ...
 - Python Interpreter
			
在开始之前,我们先限定下python解释器的意思.当讨论Python的时候,解释器这个词可以用在不同的地方.有的时候,解释器指的是Python Interpreter,也就是你在命令行交互界面上输入p ...
 - app开发流程有哪些
			
app开发流程是需求方和供求方相互协调的过程,一般分为需求分析.功能设计.功能实现.项目测试.上线等几个步骤,下面我们就来一起看看ytkah团队进行app开发各个流程主要做哪些事情,让您对app开发设 ...
 - This version of the rendering library is more recent than your version of ADT plug-in. Please update ADT plug-in问题
			
点击 Help > Install New Software. 在 Work with 的输入区域里, 输入: https://dl-ssl.google.com/android/eclipse ...
 - Ubuntu 16.04 php卸载
			
1.卸载 apache2 sudo apt-get --purge remove apache2* sudo apt-get autoremove apache2 (--purge 是完全删除并且不保 ...
 - pyhton3 configparser模块
			
1 #!/usr/bin/env python 2 # coding=utf-8 3 __author__ = 'Luzhuo' 4 __date__ = '2017/5/26' 5 # config ...
 - PsySH——PHP交互式控制台
			
PsySH PsySH is a runtime developer console, interactive debugger and REPL for PHP. PsySH是一个PHP的运行时开发 ...
 - springboot获取URL请求参数的几种方法
			
原文地址:http://www.cnblogs.com/xiaoxi/p/5695783.html 1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于pos ...
 - P4317 花神的数论题
			
题目 洛谷 数学方法学不会%>_<% 做法 爆搜二进制下存在\(i\)位\(1\)的情况,然后快速幂乘起来 My complete code #include<bits/stdc++ ...
 - 测试连接oracle数据库耗时
			
maven项目 主程序:ConnOracle.java package org.guangsoft.oracle; import java.sql.Connection; import java.sq ...