3

Dart 为我们提供了一种不使用 + 运算符来连接字符串的新方法。

旧方法是:

    String foo = "foo";
    String newString = "Hello" + " foo " + "bar";

飞镖的方式是:

    String foo = "foo";
    String newString = "Hello $foo bar";

两者都会导致:

    Hello foo bar

但是,如果我想在没有空格的情况下连接怎么办?

旧方法是:

    String foo = "foo";
    String newString = "Hello" + "foo" + "bar";

结果将是:

    Hellofoobar

但是当我在 Dart 尝试这个时,它给了我一个明显的语法错误:

    String foo = "foo";
    String newString = "Hello $myString bar";

解决方案是什么?我应该使用 String.concat 吗?字符串缓冲区?我真的很喜欢这种连接字符串的新方法,但我认为我无法适应这种情况。

提前致谢。

4

1 回答 1

8

存在多种选择。

首先,您可以只使用多个字符串文字,而不是使用 +:

String str = 'foo' ' bar ' 'zap'; // any whitespace between literals

其次,如果你想使用字符串插值,你可以像括号一样帮助范围:

String foo = 'foo';
String str = 'Hello${foo}bar';
于 2012-10-27T14:57:09.600 回答