Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 转换多集<;E>;对象到对象数组_Java_Arrays_Generics_Multiset_Bag - Fatal编程技术网

Java 转换多集<;E>;对象到对象数组

Java 转换多集<;E>;对象到对象数组,java,arrays,generics,multiset,bag,Java,Arrays,Generics,Multiset,Bag,我正在处理泛型数组的集合E[]。我目前正忙于两个集合的并集,并试图将多集合aSet转换为通用数组。我试图将当前类的泛型数组或“this”数组与union方法中接受的数组进行比较。下面是我当前的代码分区: @SuppressWarnings("unchecked") @Override public MultiSet<E> union(MultiSet<E> aSet) { MyBag<E> set = (MyBag<E>) aSet;

我正在处理泛型数组的集合
E[]
。我目前正忙于两个集合的并集,并试图将
多集合aSet
转换为通用数组。我试图将当前类的泛型数组或“this”数组与
union
方法中接受的数组进行比较。下面是我当前的代码分区:

@SuppressWarnings("unchecked")
@Override
public MultiSet<E> union(MultiSet<E> aSet) {

    MyBag<E> set = (MyBag<E>) aSet;
    E[] temp;
    temp = (E[]) new Keyed[2*length];
    // ...  
    return new MyBag<E>(temp);
}   // Generate the union of two bags.
@SuppressWarnings(“未选中”)
@凌驾
公共多集联合(多集aSet){
MyBag集合=(MyBag)aSet;
E[]温度;
temp=(E[])新键控[2*长度];
// ...  
返回新的MyBag(临时);
}//生成两个包的并集。

我很乐意澄清任何需要澄清的问题。谢谢

我不完全理解,但似乎您可以通过两个for循环将所有内容复制到临时数组中,一个用于复制aSet in,另一个用于复制“this”数组。然后临时数组将包含每个元素的所有元素,新包将拥有所有元素。但是,按照当前的设置方式,aSet必须具有与此相同的长度。长度

我想将MultiSet aSet放入一个E[]中,然后逐个元素进行比较,以查看它们是否同时存在于两者中。您所说的for循环是正确的。我只是不知道如何将一个MultiSet对象转换成一个E[]……我尝试了不同的方法,但总是得到一个转换错误。
MultiSet
来自哪里?是从图书馆来的吗?你是自己定义的吗?这是我得到的ADT,这个类继承了union。