IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Demande de précision sur la copie de listes ou de tableaux


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 122
    Par défaut Demande de précision sur la copie de listes ou de tableaux
    Bonjour à toutes et à tous,
    Soit les instructions suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    double[] tblBase = new double[100];
    for (int i = 0; i < 100; i++)
        // remplissage du tableau
    double[] tblCopie; // pas de création de tableau
    double[] autreTbl = new double[100]; // Création d'un tableau
     
    tblCopie = tblBase; // tblCopie pointe sur tblBase
    double dd = tblCopie[10] ; // Je retrouve la valeur de tblBase[10]
    autreTbl = tblBase; // autreTbl pointe aussi sur tblBase
    Pour une raison quelconque, tblBase disparaît, je suppose que tblCopie pointe maintenant sur null. Qu'en est-il de autreTbl ?

    Merci pour vos précisions.

    Pierre

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Salut,

    Les variables ne sont pas les tableaux eux-mêmes. Si tu écrits :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    int[] tab1 = new int[10]; // on créé un tableau de 10 cases dont on met la référence dans tab1
    int[] tab2=tab1; // on met la référence contenue dans tab1 dans tab2
    tab1=null;// on met null dans tab1
    La dernière ligne n'a aucune répercussion sur la variable tab2 : on modifie la valeur de tab1, c'est tout. Donc tab2 continue à référencer le table de 10 case qu'on lui a affecté dans la deuxième ligne.

    C'est comme si tu écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    int i=42;
    int j=i;
    i=25;
    i vaut 25. j vaut 42. 42 vaut toujours 42. C'est tout. Ce n'est pas parce qu'on a mis 25 dans i, que 42 vaut 25. Et bien, quand on met null dans tab1, c'est pareil, ça n'efface pas le tableau.

    Il n'y a pas disparition du tableau parce que tu mets null dans tab1 : c'est juste que tab1 ne référence plus aucun tableau.

    Quant à une troisième variable, elle est encore moins concernée.

    Et un tableau ne disparaît pas : si, à un moment donné, plus aucune variable ne le référence, il n'est plus accessible, dans aucune ligne de code.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Membre émérite
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 122
    Par défaut
    Merci joel.drigo pour ces précisions.

    Cordialement.

    Pierre

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Xquery] demandes de précision sur XQuery
    Par totoranky dans le forum XQUERY/SGBD
    Réponses: 7
    Dernier message: 31/05/2007, 11h06
  2. Réponses: 13
    Dernier message: 15/01/2007, 08h32
  3. Réponses: 2
    Dernier message: 04/06/2006, 21h35
  4. Demande de précision sur "Extends" ..
    Par Invité dans le forum Langage
    Réponses: 6
    Dernier message: 12/02/2006, 14h25
  5. Demande de précisions sur Backup/Restore et transactions
    Par lio33 dans le forum Connexion aux bases de données
    Réponses: 1
    Dernier message: 16/11/2005, 12h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo