对象类型的Scala模式匹配

时间:2017-10-23 16:40:07

标签: scala pattern-matching

使用Scala模式匹配,是否可以编写模式匹配对象类型的代码?它不像使用java的;)运算符那么糟糕,只是模式匹配使代码看起来更好。 对象类型的模式匹配是否理想?

e.g。

instanceOf

现在我明白如果基础是密封特征,可以在类型上进行模式匹配

2 个答案:

答案 0 :(得分:0)

  

但是在运行时没有比较对象类型的代码味道?模式匹配只是美化它。最后它只是像

下面的instanceof

嗯,替代方案通常是在基类型中添加一个抽象方法,这种方法不一定是可能的(如果它不是你自己的代码)或者比模式匹配更好。你真的需要逐案判断,而不是盲目地说永远或永远不会使用它。

答案 1 :(得分:0)

  

模式匹配只是美化它

它不仅仅是美化:)

如果模式匹配不相关类型,编译器将发出警告。如果您在模式匹配密封特征时错过了一个案例,则相同。