Dart中int转String的最优方式:性能对比及原因解析
Dart中int转String的性能对比分析
给定代码final int i = 0;,从性能角度看三种实现方式的优劣如下:
i as String:完全不可用
这是类型强制转换操作,但int和String在Dart类型体系中无继承/实现关系,运行时会直接抛出CastError,根本无法完成int转String的需求,直接排除。'$i':性能一般
字符串插值的底层实现会创建StringBuffer实例,调用write(i)方法后再转为String,存在额外的对象创建和方法调用开销,性能不如直接调用toString。i.toString():性能最优int类的toString()方法是Dart底层优化过的原生实现,无需创建中间对象,直接将整数转换为对应的字符串,调用路径最短,开销最小,是三种方式里性能最好的。
内容的提问来源于stack exchange,提问作者Ken Wong
相关产品推荐
相关产品推荐

