java instanceof运算符_Java instanceof 运算符的使用方法
用法:
(类型变量 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 运算符的使用方法相关推荐
- java int 运算符_Java 位运算符和 int 类型的实现
Java 位运算符和 int 类型的实现 其他运算符 # 算术运算符 +.-.*./.++i.i++.--i.i-- # 关系运算符 ==.!=.>.=.<= # 逻辑运算符 && ...
- java比较运算_Java比较运算符
注意哦: 1. > . < . >= . <= 只支持左右两边操作数是数值类型 2. == . != 两边的操作数既可以是数值类型,也可以是引用类型 public clas ...
- java中的位移运算符_Java 位移运算符
本人只是 Android小菜一个,写技术文档只是为了总结自己在最近学习到的知识,从来不敢为人师,如果里面有些不正确的地方请大家尽情指出,谢谢! 1.概述 Java 位移运算符是Java中基本的位运算操 ...
- java 基础运算_Java 基础 运算符
Java运算符 运算符:是一种用于对数据进行运算,赋值,比较的特殊符号. Java语言中运算符总共分为以下几大类: 算术运算符:+ - * / ++ -- 示例如下代码: 1 public class ...
- java wait 参数_java中wait()和join()方法的区别是什么
java中wait()和join()方法的区别是:存在不同的java包中:wait()方法用于线程间通信,它所施加的等待状态的线程可以被启动:join()方法用于在多个线程之间添加排序,它所施加的等待 ...
- java拆分日期_java实现日期拆分的方法
java实现日期拆分的方法 本文实例讲述了java实现日期拆分的方法.分享给大家供大家参考.具体如下: 如:计算6-1至6-5之间的日期天数及具体日期,预期的结果是得到: 6-1 6-2 6-3 6- ...
- java 释放一个对象_JAVA中销毁一个对象的方法
方法一:垃圾回收器 垃圾回收器是Java平台中用的最频繁的一种对象销毁方法.垃圾回收器会全程侦测Java应用程序的运行情况.当反先有些对象成为垃圾时,垃圾回收器就会销毁这些对象,并释放这些对象所占用的 ...
- java里面的 |运算符_Java 中 | ^ 运算符的简单使用
背景 今天碰到了代码中的按位与运算,复习一下,先列一个各个进制数据表. 顺便复习一下十进制转二进制的计算方式: 接下来解释下这三个运算符: & 按位与,都转为二进制的情况下,同为1则为1,否则 ...
- java 操作位_Java位运算符
Java位运算符 介绍 Java位运算符基础操作 基础类型 字节:也叫Byte 位:是bit 1Byte = 8bit 基础类型 byte 1字节 = 8bit 0000 0000 short 2字节 ...
最新文章
- Android开发:第五日番外——过时的函数和被横杠的函数
- 数位dp 3943 二分法
- Firefox 下载、附加组件、Flash插件、缓存位置(附加Chrome下载和Opera下载)
- linux命令怎么查看dat格式的文件,Linux 查看 elf可执行文件格式的两个命令
- Linux重定向详解
- 2015电大c语言,2015电大本科C语言程序设计A试题汇总.doc
- el 能否定义作用域变量_python命名空间和作用域
- 博为峰Java技术文章 ——JavaSE Swing 如何使用进度条组件JProgressBarⅡ
- Nginx+DNS负载均衡实现
- 《Linux内核设计与实现》读书笔记 - 目录 (完结)【转】
- postgre 表被加锁无法解锁问题
- Mybatis-学习笔记(8)常用的注解
- 凸二次规划的解法(旋转算法)
- cocos creator麻将教程系列(十)—— 幼麟棋牌搭建和CentOS服务器部署指南
- PMP项目管理如何通过改革处理掉核心技术成果的潜在流失风险?
- 积化和差、和差化积简记
- DSP F28335时钟及控制系统
- 我的世界Mod整合包中的Mod下载
- MATLAB动画绘制
- 如何实现水平,垂直,水平垂直居中
热门文章
- asp.net mvc 自定义 pager 封装与优化
- 一个.NET Core开发者的Linux入门学习笔记
- 【招聘(广州)】 招聘.NET程序员
- [C#7] 1.Tuples(元组)
- .Net大户的选择:Windows Container在携程的应用
- 使用Nancy打造TaskManager2.0管理系统
- frameset在html5下用什么代替_速速围观!冬至吃货地图来啦~蚌埠的吃货们,你们今天吃什么?...
- 【Envi风暴】Envi 5.3 SP1经典安装手把手图文教程(含补丁文件)
- LeetCode之Move Zeroes
- Bit Manipulation —— 位运算