变量类型识别有3种方法:
通过反射拿到变量的类型
instanceof关键字判断
通过java的多态(方法重载)来DIY类型识别
具体看例子吧,尤其第三种方式 有一个自定义的TypeTools,我觉得很实用。希望大家喜欢~
package com.cxyapi.oo;
/** 类型识别工具测试类
* @author cxy @ www.cxyapi.com
*/
public class TypeToolsTest
{
public static void main(String[] args)
{
int i=0;
TypeObject to=new TypeObject();
//1.反射
System.out.println("to的类型:"+to.getClass().getSimpleName());
System.out.println(int.class.getSimpleName());
System.out.println(Integer.class.getSimpleName());
//但是对于一个不确定类型的基本数据类型变量我们没法用反射来获取其类型。
System.out.println("----------------------");
//2.instanceof
if(to instanceof TypeObject){ System.out.println("to是TypeObject类型的");}
//但是这种办法貌似也没法确定基本数据类型
System.out.println