Dart语法“..”

问题描述 投票:0回答:1

我在Dart有一个问题,如下:

void main() {
  String originUrl = "http://www.123.com?name={0}&age={1}";
  String newUrl = originUrl.replaceFirst('{0}', 'Jack')
    ..replaceFirst('{1}', '20');
  print(newUrl);
}

输出:

http://www.123.com?name=Jack&age={1}

为什么不在下面:

http://www.123.com?name=Jack&age=20
dart
1个回答
2
投票

在你的代码中你不需要使用cascade operator,使用你不会得到String返回的replaceFirst('{1}', '20')

它应该是这样的:

  // Replace {0} with Jack, and return a new String
  String newUrl = originUrl.replaceFirst('{0}', 'Jack')
    .replaceFirst('{1}', '20'); //Replace {1} with 20 in the last string and return a new String.
© www.soinside.com 2019 - 2024. All rights reserved.