0Pricing
Java Academy · Leçon

Analyse et valueOf

Convertir des chaînes en nombres

Analyse et valueOf est une leçon Java Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Java Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Java Academy comprend 4 leçons au total.

Du texte aux nombres

Les entrées utilisateur et les fichiers arrivent sous forme de texte String. Pour effectuer des calculs, vous devez convertir ces chaînes en nombres.

Les classes enveloppes fournissent deux familles de méthodes pour cela : parseXxx renvoie un primitif et valueOf renvoie un objet enveloppe.

parseInt renvoie un primitif

Integer.parseInt prend une chaîne et renvoie un simple int. C’est la méthode de conversion la plus courante.

public class Main {
    public static void main(String[] args) {
        int n = Integer.parseInt("123");
        System.out.println(n + 1);
    }
}

valueOf renvoie une enveloppe

Integer.valueOf prend une chaîne et renvoie un objet Integer plutôt qu’un primitif. Cette méthode est pratique lorsque vous avez directement besoin d’une enveloppe, par exemple pour la placer dans une collection.

public class Main {
    public static void main(String[] args) {
        Integer boxed = Integer.valueOf("456");
        System.out.println(boxed);
    }
}

Convertir des nombres décimaux

Utilisez Double.parseDouble pour du texte représentant un nombre à virgule flottante. Cette méthode gère les valeurs comportant une virgule décimale, ainsi que la notation scientifique.

public class Main {
    public static void main(String[] args) {
        double price = Double.parseDouble("19.99");
        System.out.println(price * 2);
    }
}

Convertir d’autres types

Chaque enveloppe numérique possède une méthode de conversion : Long.parseLong, Double.parseDouble, Float.parseFloat, Short.parseShort et Byte.parseByte.

public class Main {
    public static void main(String[] args) {
        long big = Long.parseLong("9000000000");
        System.out.println(big);
    }
}

Convertir les booléens

Boolean.parseBoolean renvoie la valeur vraie uniquement lorsque le texte est égal à "true", sans tenir compte de la casse. Toutes les autres chaînes, y compris une valeur nulle, renvoient la valeur fausse.

public class Main {
    public static void main(String[] args) {
        System.out.println(Boolean.parseBoolean("true"));
        System.out.println(Boolean.parseBoolean("TRUE"));
        System.out.println(Boolean.parseBoolean("yes"));
    }
}

Convertir selon différentes bases

Integer.parseInt accepte un argument de base facultatif. La valeur 2 permet de lire du binaire et la valeur 16 de lire de l’hexadécimal.

public class Main {
    public static void main(String[] args) {
        int binary = Integer.parseInt("1010", 2);
        int hex = Integer.parseInt("ff", 16);
        System.out.println(binary);
        System.out.println(hex);
    }
}

Une entrée invalide déclenche une exception

Si la chaîne ne représente pas un nombre valide, la conversion déclenche une NumberFormatException. Vous devez placer les conversions risquées dans un bloc de gestion des exceptions.

public class Main {
    public static void main(String[] args) {
        try {
            int n = Integer.parseInt("hello");
            System.out.println(n);
        } catch (NumberFormatException e) {
            System.out.println("Not a number!");
        }
    }
}

Attention aux espaces

La conversion ne tolère pas les espaces qui entourent la valeur. Integer.parseInt(" 5 ") déclenche une exception.

Appelez toujours trim() ou strip() au préalable sur les entrées utilisateur.

public class Main {
    public static void main(String[] args) {
        String raw = "  42  ";
        int n = Integer.parseInt(raw.trim());
        System.out.println(n);
    }
}

Des nombres au texte

Pour effectuer la conversion inverse, utilisez String.valueOf ou Integer.toString. Les deux transforment un nombre en texte.

public class Main {
    public static void main(String[] args) {
        String text = Integer.toString(789);
        String text2 = String.valueOf(3.14);
        System.out.println(text.length());
        System.out.println(text2);
    }
}

parseXxx contre valueOf

Retenez cette règle : parseInt fournit un primitif int, tandis que valueOf fournit un objet Integer. Choisissez selon que vous avez besoin d’un primitif ou d’une enveloppe.

Vérification rapide

Évaluez ce que vous avez appris sur la conversion.

Récapitulatif

Vous avez appris à convertir des chaînes en nombres et inversement :

  • parseInt, parseDouble et leurs équivalents renvoient des primitifs
  • valueOf renvoie des objets enveloppes
  • Une entrée invalide déclenche NumberFormatException : supprimez donc les espaces et gérez cette exception
  • parseInt peut lire d’autres bases grâce à un argument de base
  • Utilisez toString ou String.valueOf pour reconvertir en texte

Questions Fréquemment Posées

La leçon « Analyse et valueOf » est-elle gratuite ?

Oui — le texte complet de « Analyse et valueOf » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Java Academy, passe à CoddyKit PRO. Le cours Java Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Analyse et valueOf » ?

Convertir des chaînes en nombres Tu pratiques Java Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Java Academy ?

Aucune expérience préalable n'est requise. Java Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Analyse et valueOf » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Java Academy ?

Oui. Chaque leçon Java Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Types primitifs ou enveloppes
  2. Autoboxing et unboxing
  3. Analyse et valueOf
  4. Pièges de l’autoboxing
← Retour à Java Academy