Real Problem with Deep Copy

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • curtissumpter
    New Member
    • Nov 2008
    • 1

    Real Problem with Deep Copy

    Hi,

    I need some help with the following code.
    [code=java]
    public class Site
    {
    Integer NumberOfTeams = new Integer(initial ize);
    Vector<Integer> TeamList = new Vector<Integer> ();
    }

    public void PrintTerritory (TeamsAndSites T)
    {
    int i = 1;
    System.out.prin tln("Print Territory Procedure");
    //EC -- size of the vector is one. Correct.
    System.out.prin tln("Territory Size: "+T.Territory.s ize());

    while (i<T.Territory. size())
    {
    // benign
    System.out.prin t(i+" ");
    System.out.prin tln(T.Territory .get(i).TeamLis t.toString());
    i++;
    }
    }

    public class TeamsAndSites
    {
    Vector<Site> Territory = new Vector<Site>();
    }

    // in public void BuildTerritory( )
    {
    TeamsAndSites Temp = new TeamsAndSites() ;
    Initialize(Temp );
    PrintTerritory( Temp);
    int sitenumber = 1;
    int team = 0;

    Vector<Integer> v = new Vector<Integer> ();

    int startingsite = 1;
    int num = 0;
    Site a = new Site();

    while (localRS.next() )
    {
    {
    team = localRS.getInt( "team_id");
    sitenumber = localRS.getInt( "site_id");

    if (sitenumber != startingsite)
    {
    a.NumberOfTeams = (int)v.size();
    a.TeamList = v;
    //Temp.DeepCopy(v , sitenumber);
    //Temp.Territory. elementAt(siten umber).TeamList = (Vector)v.clone ();
    for (int i = 0; i<v.size(); i++)
    {

    num = v.elementAt(i). intValue();
    System.out.prin t(i+" "+num+" ");

    Temp.Territory. elementAt(siten umber).TeamList .add(num);
    if (Temp.Territory .elementAt(site number-1).TeamList.get (0)==0)
    Temp.Territory. elementAt(siten umber-1).TeamList.rem ove(0);
    System.out.prin t("\nTemp: "+Temp.Territor y.elementAt(sit enumber-1).TeamList.get (i)+" "+"\n");
    System.out.prin t("Site Number: "+sitenumber+"\ n");
    }
    //Temp.Territory. elementAt(siten umber).TeamList = (Vector) copy(v);
    //System.out.prin tln();

    //PrintTerritory( Temp);
    //v.clear();
    startingsite++;
    a.TeamList.clea r();
    a.NumberOfTeams = 0;
    v.add(team);
    }
    else
    {
    if (startingsite == 0)
    {
    ;
    }
    else
    {
    v.add(team);
    }
    }
    }
    }

    System.out.prin tln("\n\n\nThis is Temp:\n");
    PrintTerritory( Temp);
    [/code]
    /* The problem is that the TeamsAndSites object won't increment to the
    element so it builds one long vector as opposed to 27 short vectors. I have been beating my head against a wall forever now so help please! */
    Last edited by Nepomuk; Nov 15 '08, 02:26 AM. Reason: Please use [CODE] tags!
  • Dököll
    Recognized Expert Top Contributor
    • Nov 2006
    • 2379

    #2
    Sorry you did not get an answer on this one, I am not skilled at these too much, I do mostly web stuff as of now.

    Do stay tuned though, I may be able to find you a bit of code.

    Also have you searched the whole forum on this, I would...

    In a bit!

    Here you go curtissumpter:

    Last edited by Dököll; Nov 20 '08, 04:13 AM. Reason: added link...

    Comment

    • JosAH
      Recognized Expert MVP
      • Mar 2007
      • 11453

      #3
      Your code doesn't compile: that first method is outside any class and none of
      the Java compilers like that. Fix that first and then come back again if needed.

      kind regards,

      Jos

      Comment

      Working...