Pav*_*nko 16 scala tuple-packing
我有一个元组
val tuple = ("Mike", 40)
Run Code Online (Sandbox Code Playgroud)
和一个案例类
case class Person(name: String, age: Int)
Run Code Online (Sandbox Code Playgroud)
如何将我的元组打包到Person类的对象?除此之外有什么方法:
new Person(tuple._1, tuple._2)
Run Code Online (Sandbox Code Playgroud)
也许有人喜欢
tuple.asInstanceOf[Person]
Run Code Online (Sandbox Code Playgroud)
谢谢.
sen*_*nia 33
tupled
您可以将Person.apply方法转换为函数,然后tupled在函数上使用方法:
(Person.apply _) tupled tuple
Run Code Online (Sandbox Code Playgroud)
在scala 2.11.8和扩展的scala 2.12伴随对象中,所以这就足够了:case classFunctionN
Person tupled tuple
Run Code Online (Sandbox Code Playgroud)
模式匹配
new Person(tuple._1, tuple._2)没有丑陋_N方法的模拟是模式匹配:
tuple match { case (name, age) => Person(name, age) }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4144 次 |
| 最近记录: |