int a = 8;这个 a 怎么辨认呢

解决方案 »

  1.   

    //如果是类的成员变量,可以用反射,要是方法内部定义的就不知道了.
    try{
    Field[] f = Class.forName("Test").getDeclaredFields();
    for(int i=0;i<f.length;i++)
    System.out.println(f[i].getType());
    }catch(Exception e){
    System.out.println(e.toString());
    }
      

  2.   

    int 这个就是A的类型
      

  3.   

    可以用instanceof运算符判断
    不建议使用
      

  4.   

    怎么很傻呢?
    打个比方,有一大堆的数据,int 的,double 的,String 的,都装进了 map 里。
    如果在取这些 map 数据的时候,只想取 int 类型的,那不是需要辨认吗?
      

  5.   

    那只有使用instanceof运算符,int在5.0后加到Map时被自动装箱成为了Integer。
      

  6.   

    Field[] f=Class.forName("test").getDeclaredFields()
      System.out.print(f[a].getType();精髓
      

  7.   

    char a = 'c';
    就是一个普通的变量
    不是任何一个类的成员
    怎么判断 a是什么类型的啊?
      

  8.   

    char   a   =   'c'; 
    就是一个普通的变量 
    不是任何一个类的成员 
    怎么判断   a是什么类型的啊?-------------------------------
    这种情况在java里没有。
      

  9.   


    Object obj = var ;//var 是要得到类型的变量或引用
    System.out.println(obj.getClass());几个基本数据类型类型得到的是它们的类元..
    int Integer
    char Character
    float Float
    ...   ...
      

  10.   

    一般不会有人把不同的类型放进collection中,那样很难处理
    用泛型吧