全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java中 String和StringBuffer的区别实例详解

java中 String和StringBuffer的区别实例详解

String:

           是对象不是原始类型.
           为不可变对象,一旦被创建,就不能修改它的值.
           对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去.
           String 是final类,即不能被继承. 

StringBuffer:

           是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象
           它只能通过构造函数来建立,
          StringBuffer sb = new StringBuffer();
          对象被建立以后,在内存中就会分配内存空间,并初始保存一个null.通过它的append方法向其赋值.
          sb.append("hello"); 

字符串连接操作中StringBuffer的效率要明显比String高:

String对象是不可变对象,每次操作Sting 都会重新建立新的对象来保存新的值.
StringBuffer对象实例化后,只对这一个对象操作。 

我这里写了一个小的例子,来测试String和StringBuffer在时间和空间使用上的差别。

public class Test {  
  public static void main(String args[]) {  
      
    String str = "abc";  
    StringBuffer sb = new StringBuffer("abc");  
    Runtime runtime = Runtime.getRuntime();  
    long start = System.currentTimeMillis();  
    long startFreememory = runtime.freeMemory();  
    for (int i = 0; i < 10000; i++) {  
      str += i;  
      //测试StringBuffer时候把注释打开  
      //sb.append(i);  
    }  
    long endFreememory = runtime.freeMemory();  
    long end = System.currentTimeMillis();  
    System.out.println("操作耗时:" + (end - start) + "ms," + "内存消耗:"  
        + (startFreememory - endFreememory)/1024 + "KB");  
  }  
}  

 测试结果:

使用String做10000次向一字符串后添加字符串
操作耗时:1872ms,内存消耗:1301KB 

使用StringBuffer做10000次向一字符串后添加字符串
操作耗时:15ms,内存消耗:162KB

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# String和StringBuffer的区别  # java  # String与StringBuffer对比  # Java利用StringBuffer替换特殊字符的方法实现  # 详解java中String、StringBuilder、StringBuffer的区别  # java中stringbuffer线程安全分析实例详解  # Java常用类库StringBuffer  # Runtime  # 日期操作类等类库总结  # java String、StringBuilder和StringBuffer的区别详解  # JAVA面试题 从源码角度分析StringBuffer和StringBuilder的区别  # Java中字符数组、String类、StringBuffer三者之间相互转换  # JAVA StringBuffer类与StringTokenizer类代码解析  # java之StringBuffer常见使用方法解析  # java 中String和StringBuffer与StringBuilder的区别及使用方法  # Java String 和StringBuffer的详解及区别  # Java中StringBuffer和StringBuilder_动力节点Java学院整理  # JAVA中String类与StringBuffer类的区别  # Java基础之StringBuffer详解  # 都是  # 是一个  # 这一  # 就会  # 对他  # 希望能  # 就不能  # 写了  # 谢谢大家  # 只对  # 会像  # 向其  # 把新  # StringBuffer  # Sting  # null  # append  # String  # pre  # class 


相关文章: 网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  如何用PHP快速搭建CMS系统?  如何批量查询域名的建站时间记录?  建站之星体验版:智能建站系统+响应式设计,多端适配快速建站  *服务器网站为何频现安全漏洞?  如何零基础在云服务器搭建WordPress站点?  北京网站制作的公司有哪些,北京白云观官方网站?  代刷网站制作软件,别人代刷火车票靠谱吗?  Android自定义控件实现温度旋转按钮效果  建站10G流量真的够用吗?如何应对访问高峰?  制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?  如何在宝塔面板创建新站点?  制作表格网站有哪些,线上表格怎么弄?  建站之星如何修改网站生成路径?  股票网站制作软件,网上股票怎么开户?  建站之星如何防范黑客攻击与数据泄露?  建站之星上传入口如何快速找到?  黑客入侵网站服务器的常见手法有哪些?  如何高效搭建专业期货交易平台网站?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  建站主机系统SEO优化与智能配置核心关键词操作指南  建站VPS选购需注意哪些关键参数?  如何设置并定期更换建站之星安全管理员密码?  定制建站流程步骤详解:一站式方案设计与开发指南  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  高防服务器:AI智能防御DDoS攻击与数据安全保障  建站之星与建站宝盒如何选择最佳方案?  如何制作一个表白网站视频,关于勇敢表白的小标题?  婚礼视频制作网站,学习*后期制作的网站有哪些?  韩国服务器如何优化跨境访问实现高效连接?  西安专业网站制作公司有哪些,陕西省建行官方网站?  模具网站制作流程,如何找模具客户?  微信推文制作网站有哪些,怎么做微信推文,急?  微信h5制作网站有哪些,免费微信H5页面制作工具?  如何在阿里云完成域名注册与建站?  淘宝制作网站有哪些,淘宝网官网主页?  如何将凡科建站内容保存为本地文件?  如何在IIS7中新建站点?详细步骤解析  制作网站外包平台,自动化接单网站有哪些?  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  一键制作网站软件下载安装,一键自动采集网页文档制作步骤?  如何快速查询网站的真实建站时间?  建站之星24小时客服电话如何获取?  建站之星伪静态规则如何正确配置?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  北京网站制作公司哪家好一点,北京租房网站有哪些?  如何用好域名打造高点击率的自主建站?  想学网站制作怎么学,建立一个网站要花费多少?  免费网站制作appp,免费制作app哪个平台好?  如何制作算命网站,怎么注册算命网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。