StringBuffer的用法

StringBuffer类的使用方法详解:打造高效字符串操作 在Java开发中,字符串是一个重要的数据类型。字符串可以用于数据存储、传递和显示。在Java中,字符串可以用String类来表示,但是String类具有不可变性,每次修改都会创建一个新的字符串对象,这对于频繁修改字符串的操作来说效率较低。因此引入了StringBuffer类,它是可变的,可以修改字符串的内容,其效率更高。本文主要介绍Java中的StringBuffer类,包括该类的功能、源代码解析、应用场景案例、优缺点分析、类代码方法介绍以及测试用例。全文通过markdown语法书写,并且全文内容衔接清晰。 阅读详情

一、String是一个创建就不能改变的字符串,而String Buffer是一个可修改的字符串,在内存上是优于String。

线程安全,可变的字符序列。 字符串缓冲区就像一个String ,但可以修改。 在任何时间点,它包含一些特定的字符序列,但可以通过某些方法调用来更改序列的长度和内容。

字符串缓冲区可以安全地被多个线程使用。 这些方法在必要时进行同步,以便任何特定实例上的所有操作都按照与所涉及的各个线程所执行的方法调用顺序一致的顺序发生。

二、构造方法

StringBuffer sb = new StringBuffer("abcd");
StringBuffer sb1 = new StringBuffer(12);
System.out.println(sb.append(123));

三、方法(注意在这有几个与String不同,其余都是相同的。

package 构造方法及常用方法;

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        //demo1();//构造方法
        //demo2();//append方法和insert方法
        //demo3();//删除字符串,以及清空字符串
        //demo4();//字符串的替换和反转
        //demo5();//字符串的截取,注意在这返回值类型是一个String类型的
        //demo6();//StringBuffer与String之间的转化
        //demo7();//通过StringBuffer反转字符串然后返回给string类型
    }

    private static void demo7() {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        String str = reverse(s);
        System.out.println(str);
    }

    private static String reverse(String s) {
        StringBuffer s1 = new StringBuffer(s);
        s1.reverse();
        return s1.toString();
    }

    private static void demo6() {
        StringBuffer sb = new StringBuffer("woainiljh");
        String s1 = new String(sb);//通过stringBuffer转换为String类型的
        System.out.println(s1);

        String s2 = sb.toString();//通过toString的方法转换为String类型的
        System.out.println(s2);

        String s3 = sb.substring(0,sb.length());//通过截取的方式转换为String类型
        System.out.println(s3);
    }

    private static void demo5() {
        StringBuffer sb = new StringBuffer("woainiheima");
        String s1 = sb.substring(6);//字符串的截取功能
        System.out.println(s1);
    }

    private static void demo4() {
        StringBuffer sb = new StringBuffer("woainilanzhou");
        StringBuffer s1 = sb.replace(6,sb.length(),"beijing");//替换指定位置的字符串
        System.out.println(s1);
        sb.reverse();//字符串反转
        System.out.println(sb);
    }

    private static void demo3() {
        StringBuffer sb = new StringBuffer("我爱你中国~~~~");
        StringBuffer s1 = sb.delete(0,1);
        //System.out.println(s1);
        StringBuffer s2 = sb.delete(0, sb.length());//清空所有的字符串
        System.out.println(s2);
//        sb = new StringBuffer();//注意不能用这种方式清空字符串,这个相当于把原来的作为垃圾又重新创建了一个
//        System.out.println(sb);
    }

    private static void demo2() {
        StringBuffer sb = new StringBuffer();
        System.out.println(sb);
        StringBuffer sb1 = sb.append(true);
        System.out.println(sb1);
        StringBuffer sb2 = sb.append("heima");
        System.out.println(sb2);
        StringBuffer sb3 = sb.append(123);
        System.out.println(sb3);//注意在这就是一个字符串缓冲区,每次添加返回一个新添加的字符串
        StringBuffer sb4 = sb.insert(4, "woaini");
        System.out.println(sb4);//insert也有很多的重载方法
    }

    private static void demo1() {
    /*
    StringBuffer​() 构造一个没有字符的字符串缓冲区,初始容量为16个字符。
    StringBuffer​(int capacity) 构造一个没有字符的字符串缓冲区和指定的初始容量。
    StringBuffer​(CharSequence seq) 构造一个字符串缓冲区,其中包含与指定的 CharSequence相同的字符。
    StringBuffer​(String str) 构造一个初始化为指定字符串内容的字符串缓冲区。
     */
        StringBuffer sb = new StringBuffer("abcd");
        StringBuffer sb1 = new StringBuffer(12);
        System.out.println(sb.append(123));
    }
}

 

不会ps,你也可以成为ps高手,最强傻瓜式人像一键磨皮美白瘦脸美妆PS插件 比如:美肤是用来去斑点的,如果效果不太理想,就加大百分比,反之就减小。瘦脸如果脸胖的就打开,正常的就关闭。所谓的一键调节,要不只能调节一种效果,要不就是个预设,然后让你自己再调。同时,该软件还加入了贴心的批量处理功能,能同时处理上千张照片,让您喝着茶也能将工作做完。、自动检测照片中的人脸,包括鼻子,嘴巴,耳朵,眼睛和眉毛。、依托强大的脸部识别功能,可以高效的对人物全身皮肤进行智能识别,处理,使肤质平滑、过渡均匀。,这是网上下载的模糊照片,经过简单处理,你可以发现,眼睛变的更亮,皮肤更白,眼袋消失。 阅读详情

相关推荐

nvidia-container-toolkit 国内镜像源安装

nvidia-container-toolkit 国内镜像源安装

湫然的博客 1万+

StringBuffer的用法讲解

本篇博客参考:StringBuffer的用法,java之StringBuffer常见使用方法解析 如有侵权,请告之,删之 一、StringBuffer作用 StringBuffer 当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且...

REfusing的博客 3727

通达信强龙趋势幅图指标 - 精准捕捉趋势,把握强势行情,多角度分析个股,强弱一目了然

STICKLINE(趋势>0 AND SJTJ,4.8,5.8,1.5,0),COLORYELLOW;STICKLINE(资金>0 AND SJTJ,1.2,2.2,1.5,0),COLOR0080FF;STICKLINE(异动>0 AND SJTJ,0,1,1.5,0),COLORFF0080;STICKLINE(异动=0 AND SJTJ,0,1,1.5,1),COLORGRAY;

Q1809330692的博客 5634

StringBuffer()的基本使用(*)

1.StringBuffer: 线程安全的可变字符串 我们如果对字符串进行拼接操作,每次拼接都会构成一个新的String对象,既耗时,又浪费空间。StringBuffer可以解决这个问题。 2.StringBuffer和String的区别? 前者长度和内容可变,后者不可变 3.StringBuffer的构造方法 public StringBuffer():无参构造方法 public StringBuffer(int capacity):指定容量的字符串缓冲区对象 public StringBuffer(St

weixin_42408447的博客 2348

【R语言实例】物种分布模型介绍

SDM介绍

wong2016的博客 1万+

Win10安装Nek5000

1 安装wsl 2 2 安装Nek5000 3 安装依赖项 4 安装openmpi 5 配置Nek5000 6 编译Nek5000 7 运行Nek5000算例 8 安装paraview并查看结果

weixin_43176703的博客 3451

StringBuffer简单使用

StringBuffer的简单使用,实际项目中用的高频方法

qq_59299076的博客 2636

在树莓派上部署训练好的YOLO模型

.pt.模型转换为onnx格式的模型,树莓派上部署模型

pai_da_xing8的博客 3887

[奇葩代码] - StringBuffer 的用法

/** * [奇葩代码] - StringBuffer 的用法</br> * https://gitee.com/oschina/bullshit-codes/blob/master/java/Append.java * @author cailong */ public class B002_StringBuffer { public static void main(...

分享·收获 350

大数据ZooKeeper(一):ZooKeeper基本知识

Zookeeper是一个分布式协调服务的开源框架。主要用来解决分布式集群中应用系统的一致性问题。ZooKeeper本质上是一个。

Lansonli(蓝深李)的博客 3150

(14-3)值分布式算法:QR-DQN (Quantile Regression DQN)算法

QR-DQN(Quantile Regression DQN)是一种强化学习算法,它是深度 Q-网络(Deep Q-Network,DQN)的一个变种,旨在更好地处理值函数的不确定性。QR-DQN的实现步骤与传统的DQN类似,但在目标分布计算和损失函数方面有一些不同之处,这使得它能够更好地处理值函数的不确定性。QR-DQN(Quantile Regression DQN)算法的核心思想是将值函数表示为一个分布,而不是传统的单一值估计。在下面的内容中,将讲解一个使用QR-DQN算法的例子。

码农三叔 2053

java stringbuffer用法_JAVA StringBuffer的用法

在使用StringBuffer 的时候,习惯性的像String一样把他初始化了StringBuffer result = null;结果警告:Null pointer access: The variable result can only be null at this location运行后报错,才意识到StringBuffer和String还是有很多区别的,摆渡了些资料整理出来,共享。以下部...

weixin_29898627的博客 238

Puchem化合物数据批量抓取采集_宝典_教程_Python爬虫

本文共计6500字,导出到PDF达42页(含代码)。从0教你如何抓取Pubchem化合物数据。 1、 Pubchem介绍 ​ Pubchem是美国国立卫生研究院(NIH)的开放式化学数据库,自2004年推出以来,pubchem已成为科学家、学生和公众的重要化学信息资源。其专门针对化学结构搜索,是网络药理学研究经常用到的数据库之一,不仅使用方便而且免费。 ​ PubChem主要包含小分子,但也包含较大的分子,例如核苷酸,碳水化合物,脂质,肽和化学修饰的大分子。收集有关化学结构,标识符,化学和物理性..

qq_34843422的博客 6074

StringBuffer和StringBuilder的区别及用法

文章目录StringBuffer定义StringBuffer的常用方法StringBuilder定义StringBuilder的使用 StringBuffer 定义 可变的字符数组,线程安全的可变字符序列,是单线程的。与String的区别是String是一个不可变的字符序列。 StringBuffer的常用方法 append方法 将任意类型添加到此字符串 StringBuffer bu = n...

guo12345555的博客 1704

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

java stringbuffer用法_Java StringBuffer toString()用法及代码示例

StringBuffer类的toString()方法是一种内置方法,用于返回表示StringBuffer Object包含的数据的字符串。创建并初始化一个新的String对象,以从该StringBuffer对象获取字符序列,然后由toString()返回String。 Object包含的对该序列的后续更改不会影响String的内容。用法:public abstract String toStrin...

weixin_39609483的博客 2061

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

String、StringBuffer、StringBuilder的区别和用法

特性String不可变性是否否线程安全是是否性能较低(频繁操作时)较高更高使用场景少量操作多线程环境单线程环境。

XHgga_的博客 556

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

StringBuffer的基本用法

public class StringBufferDemo01 { /** * @param args * StringBuffer基本用法 */ public static void main(String[] args) { StringBuffer sb = new StringBuffer("abcd"); //追加 sb.append("aaa"); Sy

llixiangjian的博客 542

java stringbuffer用法_java中StringBuffer类的常用方法怎么用?

展开全部构造方法摘要StringBuffer()构造一个其中不带字符的字符串缓冲区,其e68a84e8a2ad62616964757a686964616f31333337373631初始容量为16个字符。StringBuffer(intcapacity)构造一个不带字符,但具有指定初始容量的字符串缓冲区。StringBuffer(Stringstr)构造一个字符串缓冲区,并将其内容初始化为...

weixin_34902728的博客 476

StringBuffer 在JAVA中的用法

<br />范例1:<br /><br />length(),capacity(),setlength(),append()的用法:<br /><br /><br />public class stringbuffer<br />{<br /> public static void main(String args[])<br /> {<br /> String s1="l love java";<br /> StringBuffer sb1=new StringBu

xiangjunhua的JAVA技术专栏 760

stringbuffer用法 java_StringBuffer的用法

1、StringBuffer对象的初始化StringBuffer对象的初始化不像String类的初始化一样,Java提供的有特殊的语法,而通常情况下一般使用构造方法进行初始化。例如:StringBuffer s = new StringBuffer();这样初始化出的StringBuffer对象是一个空的对象,就是我犯的错误。如果需要创建带有内容的StringBuffer对象,则可以使用:Stri...

weixin_30811273的博客 390

[Java]StringBuffer用法小结

public class T2 { public static void main(String[] args) { //连接字符串 StringBuffer strBuffer1 = new StringBuffer("Hello"); StringBuffer strBuffer2 = new StringBuffer("*"); strBuffer1.appe...

... 491

JavaApi_String的用法,StringBuffer 的用法

JavaApi_String的的基本用法,StringBuffer 的用法。

weixin_70773268的博客 889
上一篇: ArrayList集合(一)
下一篇: String 和 StringBuffer StringBuilder三者之间的区别
奋斗的小巍
博客等级 码龄10年 183粉丝 138原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奋斗的小巍

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值