Scala - 如何使 val 可见
我有这个方法
def example(something):something {
val c=List()
if(){
if(){
val a=List()
}
else{
val a=List()
}
}
//here a or b are not declared
c:::a
}
如何声明它并使其可见? 我不能使用var。
I have this method
def example(something):something {
val c=List()
if(){
if(){
val a=List()
}
else{
val a=List()
}
}
//here a or b are not declared
c:::a
}
How to declare it and make it visible? I can not use var.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您无法使其在声明范围之外可见,因此,也许可以尝试以下操作:
You can't make it visible outside declaration scope, so, maybe, try this:
Scala 中几乎所有内容都会返回一个值(例外是诸如包声明和导入之类的语句)
if/else 语句、模式匹配等。
这意味着您的 if/else 块会返回一个值,并且特别热衷于这样做,非常像 Java 中的
?:
三元运算符。或者使用块:
如果您愿意,可以将它们嵌套到您的心目中!
甚至混合“n”匹配风格:
Almost Everything in Scala returns a value (the exception is for statements such as package declarations and imports)
if/else statements, pattern matches, etc. etc.
This means that your if/else block returns a value, and is especially keen to do so, very much like the
?:
ternary operator in Java.Or using blocks:
Nest 'em to your heart's content if you wish!
and even mix 'n' match styles:
在您的特定情况下,您不需要
val a
:In your particular case, you do not need the
val a
: