浅析Java中String与StringBuffer拼接的区别

发布时间 - 2026-01-11 02:06:25    点击率:

学习笔记:

  1、String拼接会创建一个新的String对象,存储拼接后的字符串;

    StringBuffer拼接是直接在本身拼接,会即时刷新。

  2.String只能拼接String类型的字符串;

    StringBuffer能够拼接所有的类型的值。

public class Test {
  public static void main(String[] args) {
    String str1="abc";
    String str2="cba";
    //使用Stirng的concat拼接
    String s1=str1.concat(str2);
    String s2=str2.concat(str1);
    System.out.println("使用concat互相拼接:"+s1+":"+s2);
    //使用StringBuffer的append拼接
    StringBuffer sb1=new StringBuffer(str1);
    StringBuffer sb2=new StringBuffer(str2);<br>      
    StringBuffer s3=sb1.append(sb2);  
    StringBuffer s4=sb2.append(sb1);
    System.out.println("使用StringBuffer互相拼接:"+s3+":"+s4);<br>
    System.out.println("s3.append(s3):"+s3.append(s3)); //输出结果为:s3.append(s3):abccbaabccba
    System.out.println("s3:"+s3);            //输出结果为:s3:abccbaabccba  
    System.out.println(s1.concat(s2)==s1);//false,拼接会重新创建一个String(String的长度是不可变的)
    System.out.println(s3.append(s1)==s3);//true,StringBuffer是对自己进行操作会即时刷新
    <br>          
          int num=123;
          /*str1.concat(num);---此处报错*/
          StringBuffer s5=s4.append(num);
          System.out.println("s5:"+s5);
  }
   
}

  输出结果是:

使用concat互相拼接1:abccba:cbaabc

使用StringBuffer互相拼接1:abccba:cbaabccba

s3.append(s3):abccbaabccba
s3:abccbaabccba
false
true
s5:cbaabccba123

以上所述是小编给大家介绍的Java中String与StringBuffer拼接的区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# java中string拼接  # java中拼接  # java中stringbuffer  # Java 8中字符串拼接新姿势StringJoiner详解  # Java8优雅的字符串拼接工具类StringJoiner实例代码  # Java字符串拼接新方法 StringJoiner用法详解  # Java String 拼接字符串原理详解  # Java中拼接字符串String的N种方法总结  # 小编  # 在此  # 给大家  # 报错  # 所述  # 创建一个  # 给我留言  # 感谢大家  # 学习笔记  # 疑问请  # 有任何  # 结果是  # main  # void  # public  # static  # Test  # abc  # cba  # args 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么实现验证码(Captcha)功能  如何选择可靠的免备案建站服务器?  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  网站制作软件有哪些,制图软件有哪些?  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  UC浏览器如何设置启动页 UC浏览器启动页设置方法  JavaScript常见的五种数组去重的方式  javascript基本数据类型及类型检测常用方法小结  Laravel如何生成API文档?(Swagger/OpenAPI教程)  Bootstrap CSS布局之列表  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  如何在IIS管理器中快速创建并配置网站?  Laravel如何实现API版本控制_Laravel API版本化路由设计策略  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  PythonWeb开发入门教程_Flask快速构建Web应用  Laravel如何使用Vite进行前端资源打包?(配置示例)  Android实现代码画虚线边框背景效果  昵图网官方站入口 昵图网素材图库官网入口  Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比  Laravel如何优化应用性能?(缓存和优化命令)  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  微信小程序 input输入框控件详解及实例(多种示例)  什么是javascript作用域_全局和局部作用域有什么区别?  制作旅游网站html,怎样注册旅游网站?  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  浅述节点的创建及常见功能的实现  Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决  Angular 表单中正确绑定输入值以确保提交与验证正常工作  Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  java中使用zxing批量生成二维码立牌  Python自然语言搜索引擎项目教程_倒排索引查询优化案例  如何快速搭建高效WAP手机网站?  如何用美橙互联一键搭建多站合一网站?  网站页面设计需要考虑到这些问题  如何快速搭建个人网站并优化SEO?  如何在服务器上配置二级域名建站?  Laravel API资源类怎么用_Laravel API Resource数据转换  佛山网站制作系统,佛山企业变更地址网上办理步骤?  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  如何在新浪SAE免费搭建个人博客?  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  Laravel如何保护应用免受CSRF攻击?(原理和示例)  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  如何在阿里云虚拟主机上快速搭建个人网站?  phpredis提高消息队列的实时性方法(推荐)  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南