我有List[String]
,我想引用每个元素。所以我想我可以做var.map(s"'$_'")
。但这给了我插值字符串中的错误:标识符或预期的块。我究竟做错了什么?有没有办法在字符串插值中使用_
?
我目前正在做var.map("'" + _ + "'")
,但这看起来有些冗长和令人困惑。
答案 0 :(得分:9)
使这项工作的公关未合并,因为语法被认为过于激进,太令人不安。
然而,接受了模式上下文中相同语法的PR。
有一些讨论在:
https://github.com/scala/scala/pull/2793
我会使用这种语法至少几次。人们喜欢保存额外的箭头。人们也不喜欢不必要地发明标识符的负担。是的,就像x
。
答案 1 :(得分:6)
我愿意:
var.map(x => s"'$x'")
它显然不那么“冗长和混乱”,也可能不如var.map(s"'$_'")
那么令人困惑。