如何在Scala类定义中使用名为'type'的变量?
解答
该需求可以实现。
type和val都是Scala的保留关键字,默认无法直接作为类成员的标识符使用,你只需要用反引号将名称包裹,即可将关键字转为普通标识符使用。
修改后的正确代码如下:
case class TestEntity ( `type`: String, `val`: String )
访问对应成员时,也需要用反引号包裹名称,示例:
val testObj = TestEntity("分类A", "测试值") println(testObj.`type`) // 输出 分类A println(testObj.`val`) // 输出 测试值
优化建议:
- 如无强制要求字段名必须为
type/val,建议优先使用非关键字命名,比如entityType、fieldValue等,无需额外添加反引号,代码可读性更高,后续开发也更便捷。
内容的提问来源于stack exchange,提问作者federico celadin
相关产品推荐
相关产品推荐

