Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala for循环中的花括号和圆括号有什么区别?_Scala - Fatal编程技术网

Scala for循环中的花括号和圆括号有什么区别?

Scala for循环中的花括号和圆括号有什么区别?,scala,Scala,这是我学习Scala的第一天(使用“Scala入门”一书)。当我阅读Scala中循环的时,有两个示例: val books = List("Beginning Scala", "Beginning Groovy", "Beginning Java", "Scala in easy steps", "Scala in 24 hours") [1] for(book如果您有多行表达式或包含很少其他表

这是我学习Scala的第一天(使用“Scala入门”一书)。当我阅读Scala中循环的
时,有两个示例:

val books = List("Beginning Scala", "Beginning Groovy", "Beginning Java", "Scala in easy steps", "Scala in 24 hours")
[1]


for(book如果您有多行表达式或包含很少其他表达式的表达式,则通常使用大括号。如果您能够(或希望)使用分号在单行中书写,则可以使用括号。每个
for
循环都可以使用大括号,但括号的使用会减少

如果其他大小写大括号允许您使用更简单的语法编写部分函数或模式匹配

如果使用REPL编写以下代码:

for (
    i <- List(1,2,3)
    y = i * i
) yield y
用于(

谢谢,我试着在“()”中加上多行,效果很好,我不知道{}和(),为什么它们几乎无处不在?我的理解肯定有很多错误,你能给我一些只有()可以用于,反之亦然的例子吗?谢谢,我想我明白了(不确定,但我想是这样)。我会尝试更多。顺便说一句,我想知道什么样的操作可以被视为表达式?@Kuan在Scala中返回值的每一段代码都是表达式谢谢。我想我会尝试更多的例子来让自己熟悉这个概念。相关问题:@KuluLimpa谢谢,这对我来说很有帮助,尽管太复杂了,我无法理解。
for { book <- books
  bookVal = book.toUpperCase()
}
println(bookVal)
for (
    i <- List(1,2,3)
    y = i * i
) yield y