用反射得到一个数据类型,我如何判断,可以除去基本类型和空类型?在线等

解决方案 »

  1.   

    基本类型是指Object?是不是你写了代码
    Class c = Class.forName(XXX);
    然后要判断c,把Object类型和null去掉?
      

  2.   

    基本类型是int double char boolean 等等
      

  3.   

    用反射得到数据类型,那就是得到了一个Class类的instance
    可以调用Class类的getName()方法判断
      

  4.   

    就是我得到的类型包含有int,double,char,还有自己定义的数据类型,我想过滤掉基本类型,只留下自己定义的和调用的类型
      

  5.   

    我知道Class类的getName()方法判断 可以得到类型,但是判断不能写xx.getName()!=int,xx.getName()!=String 等等
      

  6.   

    基本类型可以自动封装的,我的意思很明白啊
    就是想通过判断,使getName()不返回int,double,char,void,String,只返回自己定义的类型,如Student,Course
      

  7.   

    这个没办法的
    你只能自己把基本类型存到某个集合里,然后判断

    Set<String> baseTypeSet = new HashSet<String>();
    baseTypeSet.add("int"); 
    ...
    baseTypeSet.add("String");
    然后
    if (baseTypeSet.contain(yourClassInstance.getName())) {
        System.out.println("base type");
    } else {
        System.out.println("not base type");
    }
      

  8.   

    很奇怪,为什么要用getName()?
      

  9.   

    呵呵,发晚了一点,我就说,为啥要用getName()