You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Dart中用重复字符初始化指定长度字符串?附Java代码等效实现

在Dart中用重复字符初始化指定长度字符串的方法

Dart提供了两种高效的无循环方案,不会产生大量临时垃圾对象:

  • 字符串乘法运算符 *
    这是Dart内置的语法糖,底层会直接分配足够内存构造目标字符串,性能优异:

    String repeatedStr = "0" * 3; // 输出 "000"
    
  • String.repeat() 方法(Dart 2.17+)
    若使用较新版本的Dart,也可以调用字符串的repeat方法,效果与乘法完全一致:

    String repeatedStr = "0".repeat(3); // 输出 "000"
    

对应Java代码的Dart等效实现

你给出的Java代码,在Dart中可以直接用上述两种方式实现,完全规避循环:

方案1:使用字符串乘法

int precision = 2; // 取决于区域设置
String f = "0" * precision; // 得到 "00"
String format = "0.$f"; // 得到 "0.00"

方案2:使用repeat方法(Dart 2.17+)

int precision = 2;
String f = "0".repeat(precision);
String format = "0.$f";

两种方案的底层实现都经过优化,不会像手动循环那样生成大量临时对象,完全满足你的性能要求。

内容的提问来源于stack exchange,提问作者Martin Braun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 02:57:11