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吗?字符串缓冲区?我真的很喜欢这种连接字符串的新方法,但我不认为我可以使用这种情况。
提前致谢。
答案 0 :(得分:6)
存在多种选择。
首先,不要使用+,你可以只有多个字符串文字:
String str = 'foo' ' bar ' 'zap'; // any whitespace between literals
其次,如果你想使用字符串插值,你可以像帮助范围的parens一样:
String foo = 'foo';
String str = 'Hello${foo}bar';