Méthode de type de retour String
Fermé
Akrouti Ezzeddin
Messages postés
50
Date d'inscription
samedi 26 novembre 2011
Statut
Membre
Dernière intervention
31 mai 2012
-
5 mai 2012 à 02:44
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 5 mai 2012 à 04:53
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 5 mai 2012 à 04:53
A voir également:
- Méthode de type de retour String
- Retour à la ligne excel - Guide
- Télécharger étiquette retour freebox ✓ - Forum Freebox
- Retour arrière clavier - Guide
- Clear type - Guide
- Retour à la ligne google sheet ✓ - Forum Bureautique
1 réponse
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
5 mai 2012 à 04:53
5 mai 2012 à 04:53
Tu ne peux pas modifier ta variable "dur" à l'intérieur de la classe TimerTask, car pour y faire référence elle doit être déclaré "final" comme le sont d'ailleurs les autres.
Cependant avec un String tu ne vas pas t'en sortir car il est immuable, c'est à dire qu'il est impossible de modifier le contenu de la String sans changer sa référence...
Une solution pourrait être d'utiliser un StringBuffer :
Remarque :
Je ne sais pas ce que tu veux faire, mais a priori le return, va renvoyer une chaîne vide, puisque la méthode run() qui lui donne sa valeur, ne sera appelé que plus tard...
Cependant avec un String tu ne vas pas t'en sortir car il est immuable, c'est à dire qu'il est impossible de modifier le contenu de la String sans changer sa référence...
Une solution pourrait être d'utiliser un StringBuffer :
final StringBuffer dur = new StringBuffer(); // ... dur.replace(0,replace.length(), heures+":"+minutes+":"+secrestes); // ... return dur.toString();
Remarque :
Je ne sais pas ce que tu veux faire, mais a priori le return, va renvoyer une chaîne vide, puisque la méthode run() qui lui donne sa valeur, ne sera appelé que plus tard...