类型判断
有时候,我们设计的程序,要根据变量的类型来执行对应的逻辑。
在scala中,如何来进行类型判断呢?
有两种方式: isInstanceOf getClass/classOf isInstanceOf/asInstanceOf
在Java中,我们可以使用instanceof关键字来判断类型、以及(类型)object来进行类型转换,在scala中如何实现呢?
scala中对象提供isInstanceOf和asInstanceOf方法。
isInstanceOf判断对象是否为指定类的对象
asInstanceOf将对象转换为指定类型
用法
// 判断对象是否为指定类型 val trueOrFalse:Boolean = 对象.isInstanceOf[类型] // 将对象转换为指定类型 val 变量 = 对象.asInstanceOf[类型]
示例
示例说明
定义一个Person类
定义一个Student类继承自Person类
创建一个Student类对象
判断该对象是否为Student类型,如果是,将其转换为Student类型并打印该对象
参考代码
class Person3