case-class

    1热度

    1回答

    我最初遇到下面的行为,其中当一个案例类没有伴随对象时,正常工作的代码在定义该伴随对象时将无法编译。我可以通过调用Bar.apply _而不是简单的Bar来修复它,但我仍然不明白为什么这是必要的。 我试图使用https://github.com/marklister/product-collections的产品集合库,它会很高兴地将CSV解析为一个案例类,但只有在该案例类没有伴随对象的情况下。这是令

    -2热度

    2回答

    我理解我现有的项目,几件事情我无法理解: trait PeriodA { def start: Long def stop: Long def description: String def manageTo: String } case class PeriodEntity( start: Long, stop: Long,

    0热度

    2回答

    假设您有一个案例类SearchQualifier,其中有两个字段left和right。它可以被添加到一些SearchQuery类的实例中以限定搜索条件(例如SearchQualifier("date", "January 1, 2000"))。 case class SearchQualifier(left: String, right: String) 现在,说你有的SearchQualif

    3热度

    1回答

    我遇到了Spark Scala脚本的一个小问题。基本上我有原始数据,我正在做分组和计数等聚合后,我想将输出保存为特定的JSON格式。 编辑: 我试图简化的问题,并改写它: 当我选择与Array[org.apache.spark.sql.Column]其中的列名有别名,然后使用列名从源数据帧的数据(或当试图将行映射到case类时,我得到一个“Task not serializable”异常。 var

    1热度

    1回答

    我遇到过这种情况。 class Test(a: List[Int])(b: a.type) //This won't compile def test(a: List[Int])(b: a.type) = ??? //This will compile 有人可以向我解释为什么这是吗?

    2热度

    2回答

    我想创建一个应该用案例类T实现的Scala特征。特征仅仅是加载数据并将其转换为Spark数据集类型T.我得到的错误,没有编码器可以存储,我认为这是因为斯卡拉不知道T应该是一个案例类。我怎样才能告诉编译器?我曾经见过某处应该提及产品,但是没有定义这样的类。请随意建议其他方法来执行此操作! 我有以下代码,但它不会编译错误:42:错误:无法找到存储在数据集中的类型的编码器。原语类型(int,字符串等)和

    2热度

    4回答

    我们有一个文件,其中包含我们想要与案例类匹配的数据。我知道足够的力量,但在斯卡拉寻找一种惯用的方式。 给定的文件: #record name:John Doe age: 34 #record name: Smith Holy age: 33 # some comment #record # another comment name: Martin Fowler age:

    3热度

    1回答

    我已经阅读过案例类可以用于模式匹配。但是,我也可以使用模式匹配的常规类。 This question给出了一个正规的scala透视图。我希望从scala以及这个特定代码的akka​​角度来看它。 例如: 演员类:双 class TestActor extends Actor { def receive={ case One(num)=>println("One "+num)

    1热度

    1回答

    假设我们有以下的情况下类: abstract sealed class Tree case class Leaf(i: Int) extends Tree case class Node(left: Tree, right: Tree) extends Tree 每次我们调用的情况下类的构造函数,一个新的对象在内存中创建。例如,在下面的代码: val a = Leaf(0) val b

    2热度

    2回答

    我想在案例类中使用副本。但斯卡拉坚持我指定了第二个paranthsis中声明的所有属性。 例子: package academic.classes.casec.copy object TstClz { val f = DataMe("SD") ("B") val x = f.copy("x 4")()//Error : not enough arguments for me