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 :

Objectifs des conversions de variables


Sujet :

avec Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 26
    Points : 23
    Points
    23
    Par défaut Objectifs des conversions de variables
    Bonjour, je suis débutant en programmation de langage JAVA et je souhaiterais savoir a quoi sert la conversion de variables. Exemple :
    int i = 123;
    float j = (float)i;
    Merci d'avance !

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    Hello,

    Bah c'est à dire que...
    En fait "convertir des variables" ça sert à rien. C'est comme écrire System.out.println("Bonjour tout le monde"); à l'écran, ça sert à rien, ça calcule pas la compta d'une entreprise et ça stocke pas des photos dans le cloud.

    Mais tu as besoin d'écrire des trucs de ce genre pour savoir comment on affiche à l'écran, et comment on convertit des nombres d'un type en un autre.


    Convertir un int en float, c'est pas franchement utile si tu pars juste d'une variable int et que tu mets la même valeur dans une variable float juste après.
    Mais ça l'est déjà plus si tu as un nombre A de gens qui vivent dans une ville, un nombre B de gens parmi eux qui savent conduire, et que tu veux calculer le taux C des gens qui savent conduire dans la ville.

    A et B sont des nombres de gens, des entiers, donc des ints, mais C est un taux, un nombre à virgule donc float (en fait dans le monde réel on préfèrera double à float mais peu importe.)
    Donc à un moment donné il va falloir faire des conversions pour passer de nombre entier à nombre à virgule.

    la méthode qui fait ça ressemblerait intuitivement à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    float calculerC(int a, int b) {
      return b/a;
    }
    Mais ça ne fonctionne pas parce que b/a produira toujours zéro : en effet a et b étant des entiers, il s'agit d'une division entière sans virgule, et a est toujours plus grand que b.
    Comme on veut un taux, un nombre à virgule, on veut faire une division à virgule, pas entière. Mais a et b sont des entiers, pas à virgule. Il va donc falloir les convertir pour avoir des nombres à virgule au lieu de nombres entiers, et ainsi faire une division à virgule.

    Comme ceci par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    float calculerC(int a, int b) {
      return ((float) b)/a;
    }
    qui nous donne le résultat attendu.

    En pratique quand on veut faire une conversion d'un type en un autre, on va pas juste convertir une variable en une autre. On va faire la conversion là où on a besoin de le faire, au bon endroit au bon moment.
    Mais, avant de savoir se servir des conversions, il faut bien apprendre comment elles marchent...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 24/05/2005, 16h34
  2. Generer des noms de variables avec une boucle
    Par moutanakid dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 28/07/2004, 17h45
  3. Réponses: 2
    Dernier message: 21/01/2004, 17h59
  4. Transact Sql : Conversion de variable
    Par lord_paco dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/08/2003, 13h25

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