我在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
答案 0 :(得分:1)
在您的代码中,您不需要使用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.