编程语言
首页 > 编程语言> > 如何在Java中将向量转换为向量?

如何在Java中将向量转换为向量?

作者:互联网

我将JComboBox与自定义类对象一起使用,并且equals方法被覆盖,并且非常深入地集成到代码中.

问题是,如果在JComboBox下拉列表中两个对象相等,则如果选择了一个,则全部选中,并且get selected索引返回-1.

有没有一种方法可以将Vector< ObjectA>到Vector< ObjectB&gt ;?
我试过了

Vector<Clas_2> v_temp=(ca.courses.get(i).classes);

Vector<Clas_3> v_temp=(ca.courses.get(i).classes);

其中Clas_2是Clas_1的父级,而Clas_3是Clas_1的扩展,但它们都不编译.

我需要的只是JComboBox,不要使用重写的equals方法.

*注意我知道我可以将每个单独的元素转换为新数组,但是宁愿有一个内存效率更高的解决方案.

解决方法:

更改代码中声明的变量的类型不会更改equals()方法的调用.无论将其强制转换为什么,它将始终被覆盖.这就是多态性的工作方式.如果要使用其他相等的实现,则需要创建其他类.

标签:jcombobox,java,vector,casting
来源: https://codeday.me/bug/20191013/1910712.html