implicitConversions
方法(或属性)属于 scala.language
对象(object),其相关用法说明如下。
用法:
implicit lazy val implicitConversions: implicitConversions
在启用此函数的情况下,允许定义隐式转换。如果未启用implicitConversions
,则隐式转换的定义将触发编译器的警告。
隐式转换是一元函数类型 A => B
的隐式值,或者是在其第一个参数部分具有单个非隐式参数的隐式方法。例子:
implicit def stringToInt(s: String): Int = s.length
implicit val conv = (s: String) => s.length
implicit def listToX(xs: List[T])(implicit f: T => X): X = ...
其他类型的隐式类和隐式值不受此语言函数的约束。
为什么要保留这个函数?隐式转换是 Scala 核心库许多方面的核心。
为什么要控制它?如果over-used,隐式转换已知会导致许多陷阱。并且有一种over-use 的趋势,因为它们看起来非常强大,而且它们的效果似乎很容易理解。此外,在大多数情况下,使用隐式参数会导致比隐式转换更好的设计。
源码:
- language.scala
相关用法
- Scala long.BitwiseOr用法及代码示例
- Scala long.Negate用法及代码示例
- Scala long.<用法及代码示例
- Scala long.%用法及代码示例
- Scala long.<<用法及代码示例
- Scala long.<=用法及代码示例
- Scala long.S用法及代码示例
- Scala long.>用法及代码示例
- Scala long.*用法及代码示例
- Scala long.ToFloat用法及代码示例
- Scala long.BitwiseAnd用法及代码示例
- Scala long.ToDouble用法及代码示例
- Scala long.>>>用法及代码示例
- Scala long.>=用法及代码示例
- Scala long.Abs用法及代码示例
- Scala long./用法及代码示例
- Scala long.>>用法及代码示例
- Scala long.^用法及代码示例
- Scala long.-用法及代码示例
- Scala long.+用法及代码示例
- Scala long.NumberOfLeadingZeros用法及代码示例
- Scala long.Max用法及代码示例
- Scala long.ToInt用法及代码示例
- Scala long.Min用法及代码示例
- Scala Tabulate.sliding用法及代码示例
注:本文由纯净天空筛选整理自scala-lang.org大神的英文原创作品 language.implicitConversions。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。