Java 如何将arraylist的内容放入对象中?

Java 如何将arraylist的内容放入对象中?,java,arraylist,Java,Arraylist,我有一个arraylist(例如CustInfo),其中包含java类的对象集合(Cust_details,Cust_Auth),而这些对象集合又定义了变量的值集合(例如Cust_name,Cust_addr) 现在我的问题是我有一个新类(例如Priviliged_Cust),它有一些变量,这些变量的值必须从arraylist中添加的对象中获取 我试图将arraylist类型转换为新类,并使用get(index)获取数据,但它抛出了castException 请帮我做这个 补充说明 首先,运行一

我有一个arraylist(例如CustInfo),其中包含java类的对象集合(Cust_details,Cust_Auth),而这些对象集合又定义了变量的值集合(例如Cust_name,Cust_addr)

现在我的问题是我有一个新类(例如Priviliged_Cust),它有一些变量,这些变量的值必须从arraylist中添加的对象中获取

我试图将arraylist类型转换为新类,并使用get(index)获取数据,但它抛出了castException

请帮我做这个

补充说明

首先,运行一个查询,并将结果映射到相应类的相应变量中 在setter方法的帮助下,使用该特定类的对象实例。 然后将该对象添加到Arraylist中,并返回Arraylist

其次,这发生在一组查询上,数据映射到相应的类和 对象添加到arraylist中,并将相应的arraylist返回给相应的调用方法

我的问题是,我创建了一个新类,它包含与以前的类和中相同的字段 它还需要从具有 对象,其中包含需要映射的字段的值

因为查询只返回Arraylist,所以我需要从模型和 然后我需要分别匹配每个字段


希望这些信息有帮助。

我建议您使用泛型来检查集合类型

List<CustInfo> custList = ...
CustInfo ci = custList.get(n); // no cast required.
List custList=。。。
CustInfo ci=custList.get(n);//不需要演员阵容。
ArrayList CustInfo=new ArrayList();

使用泛型首先,我不完全理解您是如何构造代码的,一些代码示例可以帮助我们更好地理解

我想你的问题是你有
一个对象
另一个对象
,你希望
另一个对象
具有与
另一个对象
相同的属性。有几种方法可以解决这个问题

两个简单的方法包括:

  • 拥有另一个对象扩展
    另一个对象
    (继承)

  • 让另一个对象包含另一个对象(合成)


  • 不要使用集合存储彼此不相关的数据。将成员变量与这些值的getter和setter一起使用。然后,只需调用getter即可获得所需的任何值


    如果要创建一个新对象,该对象包含来自现有数据的一些值,请不要尝试强制转换数据。只需创建新对象并使用构造函数参数为其赋值。

    如果不看代码,很难回答,但我想您应该使用分布在arraylist中不同对象的字段中的数据来构建一个对象。为此,可以使用或类似工具(对象到对象映射)。定义映射,然后在列表上迭代,迭代结束时,您应该在对象上捕获所需的信息。

    就像其他人已经发布的一样,要准确地理解您想要的答案有点困难

    我对你的问题的看法是,你有一个包含类对象的ArrayList,你想把一些对象细节从一个类转移到另一个类(称为Priviliged_Cust)

    因此:

    <BaseClass> temp = <ArrayList-name>.get(index);    // puts the desired object into a new reference 
    
    Priviliged_Cust newCust = new Priviliged_Cust (temp); // copies the details of the object referred by temp 
                                                      //and instantiates a new Priviliged_Cust from it.
    
    temp=.get(索引);//将所需对象放入新引用中
    Priviliged_Cust newCust=新Priviliged_Cust(临时);//复制临时引用的对象的详细信息
    //并从中实例化一个新的privilized_Cust。
    

    这只有在您的Priviliged_Cust类中有一个构造函数,该构造函数接受一个对象作为参数,然后将基的详细信息复制到新类中时才起作用。

    您能提供一个吗?对不起,我不能,这是一个庞大的代码集,我可以进一步解释,arraylist包含的数据是一个查询的结果,该查询使用对象设置值,然后将其存储到arraylist中。@sadique至少给出类名及其属性。我们不需要方法定义,只需要给出相关的类结构和属性名称。对于此类问题,发布一些代码非常有帮助,即使它是一个简单的版本(事实上,将代码浓缩到关键元素的过程通常会揭示问题!)希望这能有所帮助。如果我在解释你的问题时完全弄错了方向,请忽略它。
    <BaseClass> temp = <ArrayList-name>.get(index);    // puts the desired object into a new reference 
    
    Priviliged_Cust newCust = new Priviliged_Cust (temp); // copies the details of the object referred by temp 
                                                      //and instantiates a new Priviliged_Cust from it.