Convertir chaine en double et puis comparaison

AbdelhediManel Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 19031 Statut Modérateur -
Salut, je veux
convertir chaine en double et puis comparer ce double avec un autre double
ma code:
pour la conversion :
double value;
String ch=object.toString().substring(1, 6);
    double obj =Integer.valueOf(ch).doubleValue();
pour la comparaison:
 int x =  obj.compareTo(value);
 if(x > 0) {
        System.out.println("obj is greater than value");
     }
     else if(xretval < 0) {
        System.out.println("obj is less than value");
     }
     else {
        System.out.println("obj is equal to value");
     }

l'erreur est avec obj!!!

1 réponse

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Bonjour,

    Integer.valueOf()
    renvoie un
    int
    , pas un
    Integer
    , donc la méthode
    doubleValue()
    n'est pas utilisable. Tu devrais utiliser un
    Double.valueOf()
    ou faire un cast de ton
    int
    vers le
    double
    .

    double obj = Double.valueOf(ch);

    double obj = (double) Integer.valueOf(ch);

    Remarque :
    Puisque
    obj
    est un
    double
    , et non un
    Double
    , la méthode
    compareTo()
    n'est pas utilisable non plus, tu devrais plutôt utiliser
    Double.compare()
    .

    int x = Double.compare(obj, value);
    0