一个很好的String组合连接的方法(StringBuffer)
//String类操作 (相当于C#中的StringBuilder类)
function StringBuffer(){
this.__strings = new Array;
}
StringBuffer.prototype.append = function(str){
this.__strings.push(str);
}
StringBuffer.prototype.toString = function(){
return this.__strings.join("");
}
测试代码如下:
function Test(){
var buffer = new StringBuffer();
buffer.append("hello");
buffer.append(" world!");
alert(buffer.toString());
var d1 = new Date();
var str = "";
for(var i = 0; i < 10000; i++){
str += "text";
}
var d2 = new Date();
document.write("Concatenation with plus:" + (d2.getTime() - d1.getTime()) + " milliseconds\n\r");
var oBuffer = new StringBuffer();
d1 = new Date();
for(var i = 0; i< 10000; i++){
oBuffer.append("text");
}
var sResult = oBuffer.toString();
d2 = new Date();
document.write("Concatenation with plus:" + (d2.getTime() - d1.getTime()) + " milliseconds");
}
结论:
这段代码对字符串链接进行两个测试,第一个使用加号,第二个使用StringBuffer类。每个操作都连接10000个字符串。该测试的结果说明使用StringBuffer类比使用加号节省了50%~66%的时间;
转载于:https://www.cnblogs.com/chy8219/archive/2007/10/20/931229.html
一个很好的String组合连接的方法(StringBuffer)相关推荐
- 是否有一个不区分大小写的string.Replace的替代方法?
本文翻译自:Is there an alternative to string.Replace that is case-insensitive? I need to search a string ...
- 重启计算机网络连接巨慢,电脑重启后很久才能打开宽带连接怎么样解决
最近就有很多小伙伴反映电脑在使用一段时间之后,发现每次重启后,点击桌面上的宽带连接图标,要过很长时间才能打开,遇到这种情况我们具体该怎么解决呢?下面就由学习啦小编跟大家分享一下解决方法吧,欢迎大家来阅 ...
- String详解(intern、StringBuffer、StringBuilder)
"+"操作符,它执行的加入对原始类型(如int和double),重载对String对象进行操作.'+'两个字符串操作数进行串联. java不考虑让开发者支持运算符重载.在支持运算符 ...
- 很简单的x2m格式转换为mp3方法
一个很简单的x2m格式转换为mp3方法. 正常下载的喜马拉雅文件是一个.x2m格式文件,无法通过正常的格式工厂等格式转换工具进行转换,因为.xm文件它本身就不是一个通用的.被广泛认可的音频文件. 所以 ...
- iftop是一个很好用的实时流量监测程序,跟使用iftop查看linux连接进程占用的实时流量...
iftop是一个很好用的实时流量监测程序,跟top命令监测cpu内存等差不多 官方地址:http://www.ex-parrot.com/~pdw/iftop/ 安装方法: yum install - ...
- java的知识点15——String基础、String类和常量池、String类常用的方法、字符串相等的判断、组合模式
String基础 1. String类又称作不可变字符序列. 2. String位于java.lang包中,Java程序默认导入java.lang包下的所有类. 3. Java字符串就是Unicode ...
- golang string 加号连接性能慢_面试必备:浅析C#性能优化的若干种方法
浅析C#性能优化的若干种方法 1.1 垃圾回收 垃圾回收解放了手工管理对象的工作,提高了程序的健壮性,但副作用就是程序代码可能对于对象创建变得随意. 1.1.1 避免不必要的对象创建 由于垃圾回收的代 ...
- 【Android进阶】如何写一个很屌的动画(3)---高仿腾讯手机管家火箭动画
系列中其他文章: [Android进阶]如何写一个很屌的动画(1)-先实现一个简易的自定义动画框架 [Android进阶]如何写一个很屌的动画(2)-动画的好帮手们 [Android进阶]如何写一个很 ...
- 发现一个很奇怪的现象,MyBaits 的 insert方法一直返回-2147482646
点击关注公众号,Java干货及时送达来源:cnblogs.com/wyq178/p/8652443.html 前几天在做项目demo的时候,发现有一个很奇怪的现象: 就是MyBatis发现更新和插入返 ...
- 发现一个很好的工具——VNN
网站地址是:http://www.vnn.cn/ 下面有一篇关于这个软件的文章: 一.动态域名DIY VNN的出现给那些希望用自己的电脑作服务器建立个人的网站内网用户带来了福音,以前内网用户想用自己的 ...
最新文章
- java用mvvm,[Java教程]MVVM架构~使用boxy和knockoutjs实现编辑功能
- BGP——路由通告+IBGP水平分割机制+RR路由反射器(讲解+配置命令)
- matlab图像处理 推荐,Matlab计算机视觉、图像处理工具箱推荐
- (转载)equals与==
- ProFile配置节属serializeAs
- 强口令检测(使用正则表达式)
- 三星手机怎么把html,三星手机怎么连接电脑 只要四步轻松搞定【图文】
- linux下redis常用命令
- 泛微OA中怎么导入html模板,如何在OA系统中设置模板标题
- MySQL 8.0.17的安装与图形管理软件介绍
- php根据当前日期判断法定节假日_PHP 判断当前日期是否是法定节假日或者休息日 (原)...
- 「三代组装」Pacbio组装后如何用自身数据进行polish
- Linux简单入门命令
- .cxx_destruct crash
- 博客系统与CSDN博客
- linux系统中如何关闭后台运行的进程
- 淘宝,天猫,1688,微店,京东,苏宁,淘特,小红书等30多个平台一键复制商品到拼多多平台(批量上传宝贝详情接口教程)
- 人工智能自学线路——自用
- vue3生命周期图示
- java开发的岗位职责,写给正在求职的Java开发
热门文章
- linux下安装配置laravel环境,linux下的laravel安装
- python 图片 变清晰_python模糊图片过滤的方法
- 计算机专业基础 -- Spring系列框架相关基础知识
- 技术记录 -- 只要开始,永远不晚
- linux socket 104 错误,linux socket连接中 ERRNO错误
- php分页类怎么使用,PHP实现的分页类定义与用法示例
- springboot导出excel_在SpringBoot中如何在一分钟内实现快速导出Excel
- cocoapods应用第一部分-xcode创建.framework相关
- hive数据导入导出和常用操作
- 中国互联网关于阿里未来预测:这盘大期如何走