用法:

(类型变量 instanceof 类|接口)

作用:

instanceof 操作符用于判断前面的对象是否是后面的类,或者其子类、实现类的实例。如果是则返回true 否则就返回false。

注意:

· instanceof前面的操作数的编译时类型要么与后面的类相同,要么与后面的类具有父子继承关系否则会引发编译错误。

一个简单的例子:

/**

* instanceof 运算符

* @author Administrator

*

*/

public class TestInstanceof {

public static void main(String[] args) {

//声明hello 时使用Object类,则hello的编译类型是Object

//Object类是所有类的父类,但hello的实际类型是String

Object hello = "Hello";

//String是Object的子类可以进行instanceof运算,返回true

System.out.println("字符串是否为object类的实例:"

+ (hello instanceof Object));

//true

System.out.println("字符串是否为String的实例:"

+ (hello instanceof String));

//false

System.out.println("字符串是否为Math类的实例:"

+ (hello instanceof Math));

//String实现了Comparable接口,所以返回true

System.out.println("字符串是否为Comparable类的实例:"

+(hello instanceof Comparable));

/**

* String 既不是Math类,也不是Math类的父类,故下面代码编译错误

*/

//String a = "hello";

//System.out.println("字符串是否为Math类的实例:"

//        + (a instanceof Math));

}

}

运行结果:

字符串是否为object类的实例:true

字符串是否为String的实例:true

字符串是否为Math类的实例:false

字符串是否为Comparable类的实例:true

通常在进行强制类型转换之前,先判断前一个对象是不是后一个对象的实例,是否可以成功转换,从而保证代码的健壮性。

java instanceof运算符_Java instanceof 运算符的使用方法相关推荐

  1. java int 运算符_Java 位运算符和 int 类型的实现

    Java 位运算符和 int 类型的实现 其他运算符 # 算术运算符 +.-.*./.++i.i++.--i.i-- # 关系运算符 ==.!=.>.=.<= # 逻辑运算符 && ...

  2. java比较运算_Java比较运算符

    注意哦: 1.  > . < . >= . <= 只支持左右两边操作数是数值类型 2.  == . != 两边的操作数既可以是数值类型,也可以是引用类型 public clas ...

  3. java中的位移运算符_Java 位移运算符

    本人只是 Android小菜一个,写技术文档只是为了总结自己在最近学习到的知识,从来不敢为人师,如果里面有些不正确的地方请大家尽情指出,谢谢! 1.概述 Java 位移运算符是Java中基本的位运算操 ...

  4. java 基础运算_Java 基础 运算符

    Java运算符 运算符:是一种用于对数据进行运算,赋值,比较的特殊符号. Java语言中运算符总共分为以下几大类: 算术运算符:+ - * / ++ -- 示例如下代码: 1 public class ...

  5. java wait 参数_java中wait()和join()方法的区别是什么

    java中wait()和join()方法的区别是:存在不同的java包中:wait()方法用于线程间通信,它所施加的等待状态的线程可以被启动:join()方法用于在多个线程之间添加排序,它所施加的等待 ...

  6. java拆分日期_java实现日期拆分的方法

    java实现日期拆分的方法 本文实例讲述了java实现日期拆分的方法.分享给大家供大家参考.具体如下: 如:计算6-1至6-5之间的日期天数及具体日期,预期的结果是得到: 6-1 6-2 6-3 6- ...

  7. java 释放一个对象_JAVA中销毁一个对象的方法

    方法一:垃圾回收器 垃圾回收器是Java平台中用的最频繁的一种对象销毁方法.垃圾回收器会全程侦测Java应用程序的运行情况.当反先有些对象成为垃圾时,垃圾回收器就会销毁这些对象,并释放这些对象所占用的 ...

  8. java里面的 |运算符_Java 中 | ^ 运算符的简单使用

    背景 今天碰到了代码中的按位与运算,复习一下,先列一个各个进制数据表. 顺便复习一下十进制转二进制的计算方式: 接下来解释下这三个运算符: & 按位与,都转为二进制的情况下,同为1则为1,否则 ...

  9. java 操作位_Java位运算符

    Java位运算符 介绍 Java位运算符基础操作 基础类型 字节:也叫Byte 位:是bit 1Byte = 8bit 基础类型 byte 1字节 = 8bit 0000 0000 short 2字节 ...

最新文章

  1. 最佳页面置换算法代码_(存储管理)页面置换算法
  2. Struts2问题总结
  3. qt调试时变量十六进制_QT-串口调试助手自动定时收发、十六进制转换
  4. Sublime Text 3下Emmet使用技巧
  5. java连接数据库hei_如何黑MySQL5数据库?(来自:http://superhei.blogbus.com)
  6. SpringCloud教程 | 第三篇: 服务消费者(Feign)
  7. 在集设|参透海报设计中提取排版设计灵感
  8. 读《学习JavaScript数据结构与算法》 第二章
  9. java过滤器应用实例_Servlet过滤器Filter的简单介绍(附示例)
  10. Struts2-2.了解struts.xmlpackageactionresult的name属性
  11. 【海洋女神原创】关于installshield“完美卸载”的改进方法
  12. mysql的三种安装方式(详细)
  13. 360c301路由器安装openwrt18.06usb打印服务器
  14. 腾讯企业邮箱满了,如何清空邮箱?
  15. 如何开启tiktok之旅
  16. 企业小程序应该如何开发?
  17. 计算机和红楼梦,电脑计算机与红楼梦的故事
  18. adm浏览器识别为linux,QQ浏览器Linux版qqbrowserlinux_1.0.0-1_amd64.deb能正常使用
  19. 情报运营 | VirusTotal Hunting 笔记 - 自动生成YARA规则、通过YARA规则实时打捞VT样本
  20. 服务器 消息 22029,解决SQL Server数据库维护计划失败的问题

热门文章

  1. 微软宣布SQL Server 2019免费支持Java
  2. ASP.NET Core 进程内(InProcess)托管(6)《从零开始学ASP.NET CORE MVC》:
  3. Docker - 容器部署 Consul 集群
  4. 【活动(广州)】office365的开发者训练营
  5. 谈谈ASP.NET Core中的ResponseCaching
  6. 浅谈开发模式及架构发展
  7. C#各个版本中的新增特性详解
  8. FinTech浪潮已到,五大金融场景将迎变革
  9. 解决点击MDI父窗体下拉菜单,子窗体重复出现的问题
  10. C语言试题二十一之定义n×n的二维数组编写函数 function(int a[][n])功能是:使数组左下半三角元素中的值全部置成0。