大家帮我看看为什么可以移除?

package jihe;
import java.util.*;
public class shishi {

public static void main(String[] args) {
Vector v1=new Vector();
A a=new A();
a.i=12; a.color=23;

v1.add(a);

aa b=v1.get(0);
System.out.println(v1.size());
v1.remove(b);
System.out.println(v1.size());
}
}
class A{
int i;
int color;
}

注意java中的对象引用。remove判断的是引用,只要是引用的同一个对象,就删除。

 /* package whatever; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;

class A{
    int i;
    int color;
}

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        Vector<A> v1=new Vector<A>();
        A a=new A();
        a.i=12; a.color=23;     
        v1.add(a);      
        A b=v1.get(0);
        System.out.println(v1.size());
        v1.remove(b);
        System.out.println(v1.size());
    }
}

你的代码有问题,先修正了。按照我这个。

那么b只想的就是a对象,所以你可以remove(b)相当于remove(a)
结果是
1
0