2011-01-14 3 views
2

amis,comment faire passer l'objet par référence dans android pour faire des changements dans l'objet original?

j'ai Code

DalCategories selected_object= new DalCategories(); 
      for (DalCategories cat : DalCategories.EditPostCategory) 
      {  
       if(cat.getCategory_Id().equals(root_id)) 
       { 
        selected_object = cat; 

        // add to list 

        if(selected_object.getSub_Category() != null) 
        { 
         for (DalCategories t : selected_object.getSub_Category()) 
         { 
          if(t.getSub_Category() != null) 
          { 
           // MakeChangesInThisObject(t.getSub_Category()); 
           adapter.addSection(t.getTitle(), new EfficientAdapter(this,t.getSub_Category(),selected_object.getSub_Category().get(0).getSub_Category())); 
          } 
         } 
        } 
        // add to list 




        break; 
       } 
      } 

DalCategories.EditPostCategory a trois niveaux que je veux changer les valeurs de l'objet du troisième niveau et que vous souhaitez ce changement devrait être fait à DalCategories.EditPostCategory par référence et en utilisant MakeChangesInThisObject

quelqu'un me guidera comment y parvenir?

Répondre

9

Avant d'essayer et d'apprendre Android apprendre un peu de Java. Tous les objets sont transmis par référence. Ce serait fou si chaque fois que vous avez passé une référence, le tout a été cloné/copié, surtout quand ce n'est pas nécessaire parce que la classe est immuable. Imaginez ce qui se passerait si vous créiez un tableau d'octets avec 500 000 octets.

Si elle était copiée à chaque fois qu'une méthode était appelée avec un paramètre, votre processeur serait gaspillé à copier ce tableau plusieurs fois sans vraiment faire quoi que ce soit.

Questions connexes