2014-12-19 58 views
1

嗨,我需要个人项目的帮助。我正在开发一个软件来管理节目(事件),我有问题保存和反对我的课堂里的数组列表。 我有3个对象,艺术家,事件,合同,每次用户在艺术家和代理之间签订合同,我希望能够将艺术家保存到代理类中的agentContract中。因为我需要每个代理的艺术家名单。我的问题是每次我尝试保存时,我的程序只会将所有艺术家保存在第一个代理中。有人能帮我吗???将对象保存在其他类内的数组列表中

这是我的艺术类:

public class Agent extends Person implements Serializable { 
float dueAmount; 
int percentage; 
public static ArrayList<Artist> AgentArtists = new ArrayList<Artist>(); 

public Agent() 
{ 
    super(); 
    dueAmount = 0; 
    percentage = 0; 
} 

..... .....

public static ArrayList<Artist> getAgentArtists() 
{ 
    return AgentArtists; 
} 

public void setAgentArtists(Agent age,Artist art) 
{ 
    age.AgentArtists.add(art); 
} 

我使用这个方法在合同上签字,并保存艺术家加入代理艺术家列表

public void SignWithArtist(Artist art, Agent age) 
{ 
    if (age.getAgentArtists().add(art) == true) 
    { 
     System.out.println("\n" + art.getName() + " is signing the contract\n"); 
     ProgManage.PauseScreen(1000); 

     for(int i=0; i<=1; i++) 
     { 
      System.out.print("*"); 
      ProgManage.PauseScreen(1000); 
      System.out.print("**"); 
      ProgManage.PauseScreen(1000); 
      System.out.print("***"); 
      ProgManage.PauseScreen(1000); 
      System.out.print("****"); 
      ProgManage.PauseScreen(1000); 
     } 

     System.out.println("\nContract signed by " + art.getName()); 
     ProgManage.PauseScreen(1000); 

    } else { 
     System.out.println("\n*ERROR* Artist not added"); 
     ProgManage.PauseScreen(1000); 
    } 
} 

回答

0

试试这个代码:

public class Agent extends Person implements Serializable { 
    float dueAmount; 
    int percentage; 
    public ArrayList<Artist> agentArtists; 

    public Agent() 
    { 
    super(); 
    agentArtists = new ArrayList<Artist>(); 
    dueAmount = 0; 
    percentage = 0; 
    } 

    public ArrayList<Artist> getAgentArtists() 
    { 
    return agentArtists; 
    } 

    public void setAgentArtists(Artist art) 
    { 
    agentArtists.add(art); 
    } 
} 
相关问题