关闭

JAVA中的StringBuffer初级理解

72人阅读 评论(0) 收藏 举报

StringBuffer和String都可以存储和操作字符串。String类是字符串常量,是不可更改的常量。而StringBuffer是字符串变量,它的对象是可以扩充和修改的。

StringBuffer 上的主要操作是 append 和 insert 方法,可重载这些方法,以接受任意类型的数据。每个方法都能有效地将给定的数据转换成字符串,然后将该字符串的字符追加或插入到字符串缓冲区中。append 方法始终将这些字符添加到缓冲区的末端;而 insert 方法则在指定的点添加字符。

1.append和insert的使用方法及区别
先来看append:

StringBuffer sb = new StringBuffer("love ");
sb.append("you")
println "${sb}";

得到的结果为:love you。相当于在原有字符串后面添加了相应字符串。
再来看:insert:

    StringBuffer sb = new StringBuffer("love ");
    sb.insert(2, "you");
    println "${sb}";

得到的结果为:loyouve。相当于在原字符串中第3个字符位置添加字符串。

2.其他相关方法
(1)charAt(int index):得到下标为index的元素。

    StringBuffer sb = new StringBuffer("love ");
    def s = sb.charAt(2)
    println "${s}";
    得出结果为:v。

(2)delete(int start,int end):删除start->end下标的字符元素。

    StringBuffer sb = new StringBuffer("love ");
    def s = sb.delete(0, 2)
    println "${s}";
    得出结果为:ve。

(3)indexOf(String str, int fromIndex) :
从指定的索引处开始,返回第一次出现的指定子字符串在该字符串中的索引。

        StringBuffer sb = new StringBuffer("qwertyuiop");
        def s = sb.indexOf("u", 4)
        println "${s}";
        得出的结果为u的下标:6

(4)lastIndexOf(String str) :
返回最后一次出现的指定子字符串在此字符串中的索引。

        StringBuffer sb = new StringBuffer("qwertyuiopu");
        def s = sb.lastIndexOf("u");
        println "${s}";

(5)length() :
返回长度(字符数)。

    def s = sb.length();

(6)replace(int start, int end, String str)
使用给定 String 中的字符替换此序列的子字符串中的字符。

    def s = sb.replace(0, 5, "123");
    得出的结果为:123yuiopu。

(7)setCharAt(int index, char ch) 和setLength(int newLength)
将给定索引处的字符设置为 ch。
设置字符序列的长度。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2347次
    • 积分:121
    • 等级:
    • 排名:千里之外
    • 原创:10篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档