字符串格式化-AS3中的printf

在C语言中用来格式化输出的printf很好用,而AS3中可以通过'+'运算符也达到同样的效果。

不过'+'运算符用户体验非常不好,有没有一个更好的方式呢?就像printf一样。

有的,mx.utils.StringUtil

有一个静态方法substitute,官方的说明如下:

使用传入的各个参数替换指定的字符串内的“{n}”标记。

参数

str:String — 要在其中进行替换的字符串。该字符串可包含 {n} 形式的特殊标记,其中 n 为从零开始的索引,它将被该索引处的其它参数(如果指定)替换。
 
... rest — 可在 str 参数中的每个 {n} 位置被替换的其它参数,其中 n 是一个对指定值数组的整数索引值(从 0 开始)。如果第一个参数是一个数组,则该数组将用作参数列表。如此可允许在其它想要使用... rest 签名的方法中重复使用此例程。例如
         public function myTracer(str:String, ... rest):void

         { 

             label.text += StringUtil.substitute(str, rest) + "\n";

         } 

用法非常简单。

你可能感兴趣的:(printf)