Java变量类型识别的3种方式

内容导览

反射方式,成员变量的类型判断
isInstance用法
利用泛型识别类型

测试类:

Java代码 收藏代码
package com.cxyapi.oo;

import java.util.Date;

import com.cxyapi.generics.TypeToolsGenerics;

/** 类型识别工具测试类
* @author cxy @ www.cxyapi.com
*/
public class TypeToolsTest2
{
private static int ii=0;
private static Date d=new Date();

public static void main(String[] args) throws Exception  
{  
    //补充一:获得成员变量的类型  
    System.out.println(TypeToolsTest2.class.getDeclaredField("ii").getType());   
    System.out.println(TypeToolsTest2.class.getDeclaredField("d").getType());   
    System.out.println("----------------------");  

    //补充二:isInstance可判断出包装类型,从而得知基本类型  
    System.out.println(Integer.class.isInstance(ii));  
    System.out.println(Date.class.isInstance(d));  
    System.out.println("----------------------");  

    //补充三:泛型方式判断类型  
    System.out.println(TypeToolsGenerics.getType(ii));  
    System.out.println(TypeToolsGenerics.getType(2.2));  
    System.out.println(TypeToolsGenerics.getType(true));  
    System.out.println(TypeToolsGenerics.getType('a'));  
    System.out.println(TypeToolsGenerics.getType(d));  
}  

}

泛型方式类型识别工具:

Java代码 收藏代码
package com.cxyapi.generics;

import java.util.HashMap;
import java.util.Map;

/** 类型识别工具 泛型
* @author cxy @ www.cxyapi.com
*/
public class TypeToolsGenerics
{
private static final Map

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值