用instanceof。
if(a instanceof String)
{}
if(a instanceof Integer)
{}

解决方案 »

  1.   

    一般有两种方法来判断,RTTI和instanceof运算符,各有所长。
    但个人认为通常在不知道是哪个类对象的时候(当然一般情况我们都是知道的)
    RTTI的灵活性和可操作性要高的多。以下附上一个方法:
    假设现在有一个ArrayList的对象引用v,里面已经放入了若干
    我的自定义类MyInt类的对象,那么可以用以下方法获知它里
    面放的对象是哪个类的实例。 public void exp()
    {
    for(int i=0;i<v.size();i++)
    {
    Object a=v.get(i);

    //利用RTTI来实现判断
    Class b=a.getClass();
    if((b.toString()).equals("class MyInt"))
    System.out.println("The "+i+" element is instance of MyInt");

    //利用instanceof来判断
    if(a instanceof MyInt)
    System.out.println("The "+i+" element is instance of MyInt");
    }
    }
      

  2.   

    添加的时候当然知道是什么类型,但经过一系列的删除和添加,谁还知道哪个类的具体对象
    在ArrayList的哪个位置,若是知道的话,我就不会发这个帖子了