gpt4 book ai didi

scala - "!"在 Scala 中是什么意思?

转载 作者:行者123 更新时间:2023-12-02 06:14:46 30 4
gpt4 key购买 nike

我正在查看一段代码,如下所示:
graph.vertices.filter(!_._2._1)
我明白 _scala 中的通配符但我不知道是什么!应该做。

什么!在 Scala 中是什么意思?

最佳答案

Scala 在语法级别没有运算符。所有的操作都是方法。

例如,语法中没有加运算符,但数字有 +方法:

2.+(3)   // result is 5

当你写 2 + 3 ,这实际上是上面表达式的语法糖。

任何类型都可以定义 unary_!方法,这是什么 !something脱糖。 bool 值实现它,具有明显的逻辑否定(“非”)含义,感叹号在其他具有 C 继承的语言中具有。

在您的问题中,该表达式是以下调用的缩写形式:
graph.vertices.filter { t => !(t._2._1) }

哪里 t是元组中的元组,第二个元素的第一个元素的类型实现了 unary_!并且(根据 .filter 的要求)返回 Boolean .我敢打赌我口袋里的钱元素本身就是一个 Boolean ,在这种情况下 !只是意味着“不是”。

关于scala - "!"在 Scala 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40248204/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com