返回顶部
首页 > 资讯 > 后端开发 > Python >Java字符串相关类StringBuffer的用法详解
  • 562
分享到

Java字符串相关类StringBuffer的用法详解

2024-04-02 19:04:59 562人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录一、StringBuffer 介绍二、方法详解1.构造方法2.增 StringBuffer append(…)3.删 StringBuffer delete(int

一、StringBuffer 介绍

java.lang包下的StringBuffer类,代表着可变的字符序列,可以用来对字符串内容进行增删改操作。同时它是线程安全的,效率称不上高。

StringBuffer类当中的许多方法都是与String相同的,是字符串相关的类,所以我称他为字符串的兄弟…。但是两兄弟也有本质的区别,String不可变的字符序列

二、方法详解

1.构造方法

当我们想要创建StringBuffer类型的对象,必须要使用到构造方法来生成,不同于String类型的可以直接用常量赋值。

接下来就让我来介绍一下StringBuffer的三个构造方法:

①StringBuffer()

使用空参构造方法来创建StringBuffer对象,在底层会得到一个初始化容量大小为 16的字符换缓冲区,而且这个长度是可以不断扩容的,这也体现了可变字符序列的特性。

StringBuffer stringbuffer = new StringBuffer();

②StringBuffer(int size)

当我们需要创建StringBuffer对象时,可以在括号内指定一个大小,从而获得一个指定长度的字符串缓冲区。

比如我们将整数8作为参数传入就能在底层初始化一个容量为8的字符串缓冲区。

StringBuffer stringbuffer = new StringBuffer();

③StringBuffer(String str)

创建StringBuffer对象时,借助构造方法,我们还可以创建一个包含内容的可变字符串序列,只需要将想要的内容作为字符串传入即可;

我们可以传入一个String类型的对象传入:

String a = "abcd";
StringBuffer sb_1 = new StringBuffer(a);

也可以直接传入一个字符串常量:

StringBuffer sb_2 = new StringBuffer("abcd");

效果案例:


public class StringBufferTest {
    public static void main(String[] args) {
        String a = "abcd";
        StringBuffer sb_1 = new StringBuffer(a);
        StringBuffer sb_2 = new StringBuffer("abcd");
        System.out.println(sb_1.toString());
        System.out.println(sb_2.toString());

    }

}

2.增 StringBuffer append(…)

StringBuffer类中提供了许多append()方法,可以用来对字符串进行拼接操作,我们可以来看一看:

通过上述列出来的实例中,我们可以知道,append()方法中,除了String类型外,无论是整形(int,long)、浮点型(float,double),还是布尔类型(boolean)也都可以作为参数传入的。

效果案例:



public class StringBufferTest {
    public static void main(String[] args) {

        StringBuffer sb_3 = new StringBuffer();
        int A = 29;
        long B = 29L;
        float C = 2.9f;
        double D = 29.29;
        boolean E = true;

        sb_3.append(A);
        sb_3.append(" ");
        sb_3.append(B);
        sb_3.append(" ");
        sb_3.append(C);
        sb_3.append(" ");
        sb_3.append(D);
        sb_3.append(" ");
        sb_3.append(E);

        System.out.println(sb_3.toString());

    }

}

3.删 StringBuffer delete(int start,int end)

delete(int start,int end)方法可以用来删除指定位置的元素,删除元素的位置从start参数开始,到end参数前一个位置结束。

效果案例:


public class StringBufferTest {
    public static void main(String[] args) {

        StringBuffer sb_3 = new StringBuffer("0123456789");

        sb_3.delete(0,6);

        System.out.println(sb_3.toString());

    }

}

我们指定从删除的位置从下标0开始,到下标6前一个位置结束

4.改 StringBuffer replace(int start,int end,String str)

这是将指定位置内容替换成指定内容的方法replace(int start,int end,String str),替换的位置依旧是从start下标开始,到end下标的前一个位置结束,也就是[start , end)

效果案例:


public class StringBufferTest {
    public static void main(String[] args) {

        StringBuffer sb_3 = new StringBuffer("0123456789");

        System.out.println(sb_3.toString());

        sb_3.replace(1,9,"        ");

        System.out.println(sb_3.toString());

        sb_3.replace(1,9,"asdfghjkl");

        System.out.println(sb_3.toString());

    }

}

需要注意的是,此方法不是将指定位置内容完全由指定内容填充,而是直接将原本的内容替换成传入的指定内容,是可以造成下标位置变化的。

5.插入 StringBuffer insert(int offset, · · · )

使用insert(int offset , · · · )方法时,我们可以在指定下标位置的前面插入指定的内容,而内容对象的类型并不唯一,类似于上文将结果的append()方法中的参数。

效果案例:


public class StringBufferTest {
    public static void main(String[] args) {

        StringBuffer sb_3 = new StringBuffer("0123456789");

        sb_3.insert(0,"a");
        System.out.println(sb_3.toString());
        sb_3.insert(1,"b");
        System.out.println(sb_3.toString());
        sb_3.insert(2,"c");
        System.out.println(sb_3.toString());
        sb_3.insert(3,"d");
        System.out.println(sb_3.toString());
        sb_3.insert(4,"e");
        System.out.println(sb_3.toString());
        sb_3.insert(5,"f");
        System.out.println(sb_3.toString());
        sb_3.insert(6,"g");
        System.out.println(sb_3.toString());

    }

}

6.反转 StringBuffer reverse()

reverse()方法可以将当前字符串序列的先后顺序反转过来,是十分常用的方法:

效果案例:


public class StringBufferTest {
    public static void main(String[] args) {

        StringBuffer sb_3 = new StringBuffer("0123456789");

        System.out.println(sb_3.toString());

        sb_3.reverse();

        System.out.println(sb_3.toString());

    }

}

到此这篇关于Java字符串相关类StringBuffer的用法详解的文章就介绍到这了,更多相关Java StringBuffer内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java字符串相关类StringBuffer的用法详解

本文链接: https://lsjlt.com/news/169036.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java字符串相关类StringBuffer的用法详解
    目录一、StringBuffer 介绍二、方法详解1.构造方法2.增 StringBuffer append(…)3.删 StringBuffer delete(int...
    99+
    2024-04-02
  • Java常用类之字符串相关类使用详解
    目录字符串相关类1.String类的使用2.理解String类源码3.使用StringBuilder类4.StringBuilder类源码字符串相关类 String、StringBu...
    99+
    2022-11-13
    Java 字符串工具类 Java字符串类 Java字符串
  • 详解python字符串相关str
    目录1:访str单个字符2: 字符串连接3:str切片4:使用in 和not in 测试字符串5:str方法6:重复操作符7:分割字符串总结1:访str单个字符 #for循环迭代 n...
    99+
    2024-04-02
  • Java基础类库之StringBuffer类用法详解
    StringBuffer类 String类是在所有开发项目开发之中一定会使用的一个功能类,并且这个类拥有如下功能 每个字符串的常量都属于一个String类匿名对象,并且不能修改;St...
    99+
    2024-04-02
  • 关于Java中String类字符串的解析
    目录一、前言二、String类概述三、字符串的特点四、String 构造方法五、String类对象的特点六、比较字符串的方法七、判断两个字符串地址是否相等一、前言 在java中,和C...
    99+
    2024-04-02
  • C#字符串String及字符Char的相关方法
    一、字符串: 1、访问String中的字符: string本身可看作一个Char数组。 string s = "hello world"; for (int i = 0; i &l...
    99+
    2024-04-02
  • java中怎么用stringbuffer删除指定字符串
    在Java中,可以使用StringBuffer的delete()方法来删除指定字符串。以下是一个示例代码: StringBuffer...
    99+
    2024-02-29
    java
  • PHP 字符串相关常用操作方法
    PHP 字符串相关操作方法 并置运算符 查找字符位置strlen() 获取字符串长度mb_strlen() 获取中文等字符串长度strpos() 返回字符串在另一字符串中第一次出现的位置(...
    99+
    2023-09-11
    php apache 开发语言
  • Java的String(字符串详解)
    字符串 1.字符串的常见构造方法 主要有三种,一种是直接使用常量去构造,要么使用new String来构造,或者还可以使用字符数组的形式。 public static void main(String...
    99+
    2023-10-19
    java String 字符串 详解
  • 总结java 字符串,日期类Date和 Calendar相互转化,以及相关常用方法
    Java中,可以通过以下方法将字符串转换为Date: String dateString = "2023-07-28";DateFormat format = new SimpleDateFormat...
    99+
    2023-10-21
    java 开发语言
  • Java之一文详解String字符串的用法
    目录一. String字符串简介1. 概述2. 与字符的区别3. 定义方式3.1 构造方法定义3.2 直接赋值定义二. 字符串实用方法1. 字符串的比较方法2. 判断字符串是否为空3...
    99+
    2023-05-19
    Java String字符串用法 Java String字符串 Java String
  • Java字符串拼接详解
    目录一、“+” 操作符二、StringBuilder(非线程安全)三、StringBuffer(线程安全)四、String 类的 concat 方法五、Str...
    99+
    2024-04-02
  • JavaScript字符串运算符、字符串和数字相加的方法
    本篇内容介绍了“JavaScript字符串运算符、字符串和数字相加的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能...
    99+
    2024-04-02
  • PHP中int类型转字符串的方法详解
    PHP中int类型转字符串的方法详解 在PHP开发中,经常会遇到将int类型转换为字符串类型的需求。这种转换可以通过多种方式实现,本文将详细介绍几种常用的方法,并附带具体的代码示例来帮...
    99+
    2024-04-02
  • Python字符串的有关知识详解
    目录1.部分转义字符2.slice 切片读取字符串3.调用split()方法分割字符串 ASCII字母4.与字母大小写有关方法5.搜索查找字符串总结1.部分转义字符 转义字符 #...
    99+
    2024-04-02
  • Java实现字符串切割的方法详解
    今天给大家介绍一个小知识点,但是会非常的实用,就是平时我们写Java代码的时候,如果要对字符串进行切割,我们巧妙的运用一些技巧,可以把性能提升5~10倍。下面不说废话,直接来给大家上...
    99+
    2024-04-02
  • Javascript的字符串方法详解
    目录字符串长度:lengthcharAt()charCodeAt()字符串检查是否包含某个值indexOf()lastIndexOf()includes()startsWith()e...
    99+
    2024-04-02
  • java关于字符串的常用API
    目录前言一、String类二、StringBuffter类三、StringTokenizer类前言 所谓的字符串其实就是一串连续的字符,它是由许多单个字符连接而成的。如多个英文字母所...
    99+
    2023-05-19
    java API java 字符串API
  • java判断字符串是否相等的方法
    java判断字符串是否相等的方法:java中字符串的比较:==我们经常习惯性的写上if(str1==str2),这种写法在java中可能会带来问题 example1:String a="abc"; String b="abc"那么a==b将...
    99+
    2016-04-26
    java 字符串
  • Java中字符串和日期类型的相互转换
    当在Java中进行字符串和日期类型之间的相互转换时,可以使用SimpleDateFormat类来实现。下面是一个详细的代码示例,展示了如何将字符串转换为日期类型,以及如何将日期类型转换为字符串。 首先,我们来看字符串转换为日期类型的示例代码...
    99+
    2023-08-17
    java jvm 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作