我有这样一个数据集: Dataset<MyModel> ds ,和 MyModel 有一个领域 name (还有更多的领域)。我试着这样做:
Dataset<MyModel> ds
MyModel
name
ds.foreach(r -> { r.setName("name"); }); return ds;
但我发现那是在 ds ,的 name 字段未更新。我想知道我该怎么做才能让 ds 更新了吗?
ds
btxsgosb1#
不能更改数据集,只能创建一个新数据集因此,您需要对数据集应用一个Map,更改字段,从而生成一个新的数据集如果mymodel是一个case类,您将执行以下操作:ds.map(x=>x.copy(myfield=“new value”))作为一个类示例,我建议在Map中创建对象的副本,修改字段并返回副本。
1条答案
按热度按时间btxsgosb1#
不能更改数据集,只能创建一个新数据集
因此,您需要对数据集应用一个Map,更改字段,从而生成一个新的数据集
如果mymodel是一个case类,您将执行以下操作:
ds.map(x=>x.copy(myfield=“new value”))
作为一个类示例,我建议在Map中创建对象的副本,修改字段并返回副本。