我在想用填充字符构建字符串的最快方法。定义一个函数:
fillString('A',12); // return 'AAAAAAAAAAAA'
一个简单的循环可以做到这一点,但如果我想填充数百万个字符,它不是很快。
这是在动作脚本中组合字符串的最快方法吗?
array.join('');
如果是这样,首先你需要先构建一个数组,那会占用太多空间。
曾经我在考虑一个stringbuffer 类,但我认为它会比直接使用 String 慢。
我在想用填充字符构建字符串的最快方法。定义一个函数:
fillString('A',12); // return 'AAAAAAAAAAAA'
一个简单的循环可以做到这一点,但如果我想填充数百万个字符,它不是很快。
这是在动作脚本中组合字符串的最快方法吗?
array.join('');
如果是这样,首先你需要先构建一个数组,那会占用太多空间。
曾经我在考虑一个stringbuffer 类,但我认为它会比直接使用 String 慢。
这可能不是正确的 actionscript 语法,但您应该明白:
public function fillString(filler:String, count:integer):String {
var result:String = filler;
while (result.length <= count/2)
result += result;
return result+result.substr(0,count-result.length);
}
关于加入字符串的最快方法,本文有一些基准:
http://jacksondunstan.com/articles/1790
基本上,只使用 bigString = stringA + stringB 就可以了,但是使用 ByteArray 技巧可以提高速度。
顺便说一句,jacksondunstan.com 是获取有关 AS3 性能的可靠科学数据的重要来源。