Ozzy a écrit :Ce n'est pas si étonnant que ça : quand tu passes 1 objet en paramètre d'une méthode et que tu le modifies dans celle-ci, il ressort modifié alors qu'une variable entière (par ex), tu ne peux pas la modifier. C'est comme les pointeurs et ça correspond d'ailleurs à ce que tu as dit avec &A (qui n'existe pas en java).
Ouais par paramètre d'accord. Bon bah c'est comme tout hein, faut pratiquer pour pas perdre le fil (vu mon métier j'ai un peu honte quand même, bref...)
Pour ceux qui comprennent rien, c'est avec ce genre de gymnastique de chiffres et de lettres qu'on vous fait des programmes informatiques. On peut pas faire plus simple comme explication...
Ozzy a écrit :Ce n'est pas si étonnant que ça : quand tu passes 1 objet en paramètre d'une méthode et que tu le modifies dans celle-ci, il ressort modifié alors qu'une variable entière (par ex), tu ne peux pas la modifier. C'est comme les pointeurs et ça correspond d'ailleurs à ce que tu as dit avec &A (qui n'existe pas en java).
Moi j'pense surtout que tu devrais te débrouiller autrement, parce qu'en arriver à vouloir "copier" un objet qui aura donc deux noms, c'est vraiment pas propre DU TOUT !
Ton problême doit pouvoir se règler autrement.
ajacques, dogma
ampli-reglage de la vis de tension de surface de la grille d'une anode comme la phase bias, obligé en tension tout autant que comme mécaniques de transport-déroulement de bande
Ce n'est pas un problème que j'ai, c'est une question que je me pose et, comme j'ai maintenant la réponse, ça ne devrait pas devenir un problème puisque je vais soigneusement éviter de me retrouver dans cette situation ! (de plus, c'est juste pour la culture, je ne suis pas informaticien pro donc aucune boite ne chutera ou aucune fusée n'explosera en vol à cause de moi )
Toox : oui j'en suis sûr, pour bénéficier d'une nouvelle case mémoire tu es obligé de faire un "new"
Ajacques : oui tu as raison
Sinon pour conclure en Java, il existe la méthode clone() qui permet de dupliquer l'objet en créant une "copie" de l'objet initial en rendant la copie totalement indépendante de l'original (tu récupères les méthodes et les attributs de classes à leurs valeurs lors du clonage).
Malherbe in a coma, I know, I know - it's really serious
Do you really think it'll pull through ?
Dernier truc pour Nicobi (merci encore) : si je veux initialiser un tableau T avec le contenu d'un autre S, il faut donc absolument que j'évite T=S et donc que je passe par un remplissage case par case ? (avec for)
Dernier truc pour Nicobi (merci encore) : si je veux initialiser un tableau T avec le contenu d'un autre S, il faut donc absolument que j'évite T=S et donc que je passe par un remplissage case par case ? (avec for)
Ca dépend y a quoi dans ton tableau ? Si tu utilises Java il faut que tu "penses" objet, donc pour ton tableau, ça devrait être tout simplement un Vecteur (classe Vector) ou une collection. Après ça t'en fais ce que tu veux de ton tableau, tu peux y mettre des objets, tu peux le copier, insérer des éléments ...
Mais sinon si tu veux absolument faire une copie de ton tableau, tu as toujours la fonction clone(), que tous les objets ont.
ampli-reglage de la vis de tension de surface de la grille d'une anode comme la phase bias, obligé en tension tout autant que comme mécaniques de transport-déroulement de bande
Pour l'instant, je me dois de rester simple (comme tout débutant) donc int [] S ; S = new int[n] et disons que je veux classer les éléments de S dans T mais en gardant S. (ou des tableaux à plusieurs dimensions pour travailler sur des matrices genre problèmes itératifs).
Mais vector ou tableau, ce sont des objets donc on est dans la logique précédente, non ? Faut que je voie Clone(), mais ça a l'air chiadé.
Ozzy a écrit :Pour l'instant, je me dois de rester simple (comme tout débutant) donc int [] S ; S = new int[n] et disons que je veux classer les éléments de S dans T mais en gardant S. (ou des tableaux à plusieurs dimensions pour travailler sur des matrices genre problèmes itératifs).
Mais vector ou tableau, ce sont des objets donc on est dans la logique précédente, non ? Faut que je voie Clone(), mais ça a l'air chiadé.
Arf ... en fait c'est pas chiadé, c'est juste le langage objet, donc une fois qu'on a pigé le fonctionnement c'est très rapide. Pour répondre à ta question, si tu as des tableaux "classiques" comme ça, alors oui le plus simple est de faire une boucle for pour les copier.
Mais pourquoi utiliser Java dans ce cas ? Ce serait comme prendre un bazooka pour écraser un moustique !
ampli-reglage de la vis de tension de surface de la grille d'une anode comme la phase bias, obligé en tension tout autant que comme mécaniques de transport-déroulement de bande
C'est juste que j'apprends Java en liaison avec ma culture personnelle. En plus, ce langage me fascine. Encore plus d'ailleurs après cet échange (dont je te remercie au passage).
Pour développer en Java je te conseille l'utilisation de BlueJ, tu dessines tes classes ou tes interfaces (des rectangles), tu traces les héritages et implémentations, et ça te crées une base de code trés propres.
C'est idéal pour apprendre le Java avec de bonnes bases
Malherbe in a coma, I know, I know - it's really serious
Do you really think it'll pull through ?
Je pense que tu peux trouver des "cours", ou tutoriels sur Java et la programmation Objet, parce que plus que la syntaxe, c'est surtout le concept qu'il est important de comprendre. Le reste vient tout seul après !
Moi je n'utilise plus Java, mais ça me manque ...
ampli-reglage de la vis de tension de surface de la grille d'une anode comme la phase bias, obligé en tension tout autant que comme mécaniques de transport-déroulement de bande
J'ai "le livre de Java 1er langage" chez Eyrolles, c'est bien fait mais c'est vrai que "la philosophie objet" n'est pas spécialement mise en valeur par rapport au reste.
J'ai téléchargé BlueJ. Et quelques trucs sur Java mais la pédagogie de ces documents est incertaine.
Avec vos conseils, j'ai passé la 1ère étape et maintenant, comme dit Villepin à Chirac, "je passe au plan B, Jacques".