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

avec Java Discussion :

Pourquoi instancier une classe String ?


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2009
    Messages : 18
    Par défaut Pourquoi instancier une classe String ?
    Bonjour,

    Quelle différence entre déclarer une "variable" de type String de cette façon :

    String maVariable = "niania";

    Et l'instancier (sinon pour bénéficier des méthodes non static) ?

    String maVariable = new String("nianiania");

    Merci pour votre réponse !

  2. #2
    Membre émérite Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    Bonjour,
    je t'invite à lire cet article (encore une fois) très intéressant tu y trouveras tes réponses

    jojodu31

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par Thoustra Voir le message
    (sinon pour bénéficier des méthodes non static) ?
    "nianiania" a parfaitement accès aux méthodes d'instance de String. Inutile de faire new String() pour ça.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2009
    Messages : 18
    Par défaut
    Citation Envoyé par thelvin Voir le message
    "nianiania" a parfaitement accès aux méthodes d'instance de String. Inutile de faire new String() pour ça.

    Je pose la question parce que je ne comprends pas un truc simple

    Voyez :

    Je récupère une donnée de 11 cars dans refFlux

    elle s'affiche correctement, mais dès que je lui applique la méthode substring

    elle n'affiche plus rien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    String refFlux = liste.getReferenceFlux();
    			  			System.out.println("refflux :" + refFlux); 			
    			  			String val = (refFlux.substring(3, 3));
     
    			  			System.out.println("VAL : " + val);
    résultat :

    refflux :RDEIDEMWT21
    VAL :

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Devinette : qu'est-ce que le deuxième paramètre de substring() ?
    C'est l'index du caractère où la substring doit s'arrêter, exclusivement.

    donc, refFlux.substring(3, 3) => prendre la sous-string qui commence à l'index 3 et s'arrête avant l'index 3.
    On appelle ça la chaîne vide, on peut la noter directement ""

    Penser à lire la JavaDoc des méthodes qu'on utilise, avant de les utiliser.

    Je suppose que tu voulais faire ça : refFlux.substring(3, 6)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2009
    Messages : 18
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Devinette : qu'est-ce que le deuxième paramètre de substring() ?
    C'est l'index du caractère où la substring doit s'arrêter, exclusivement.

    donc, refFlux.substring(3, 3) => prendre la sous-string qui commence à l'index 3 et s'arrête avant l'index 3.
    On appelle ça la chaîne vide, on peut la noter directement ""

    Penser à lire la JavaDoc des méthodes qu'on utilise, avant de les utiliser.

    Je suppose que tu voulais faire ça : refFlux.substring(3, 6)
    Désolé...

    pour d'autres langages le second paramètre signifie la longueur du substring, j'aurai dû effectivement lire plus attentivement (car lue !) la java doc.

    Dire que j'ai plongé dans des explications plus complexe (constructeurs de la classe String etc).

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Note au passage que je préfère la convention des autres langages, qui me semble plus répandue... Mais la JavaDoc est tellement bien faite, quand on se pose une question c'est le premier endroit à consulter.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre chevronné
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2006
    Messages
    645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 645
    Par défaut
    Citation Envoyé par Thoustra Voir le message
    pour d'autres langages le second paramètre signifie la longueur du substring, j'aurai dû effectivement lire plus attentivement (car lue !) la java doc.
    C'est le piège amusant pour les gens qui ont fait du .Net

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

Discussions similaires

  1. Instancier une class a partire d'une variable string
    Par Assimil dans le forum ASP.NET
    Réponses: 7
    Dernier message: 25/06/2008, 16h47
  2. Instancier une classe dont le nom est contenu dans une String
    Par fyque dans le forum Général Python
    Réponses: 15
    Dernier message: 13/06/2008, 12h33
  3. [JAR]Instancier une classe d'un jar
    Par Foub dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 16/08/2005, 15h10
  4. [Débutant(e)]Instancier une classe connaissant son nom (String)
    Par Invité dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 17/06/2005, 11h05
  5. [Débutant(e)]servlet qui instancie une classe personelle
    Par NiBicUs dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 08/02/2005, 12h00

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