Récapitulatif - Flux de contrôle
Fait partie de la section Logique & Flux du Journey Java de Coddy — leçon 39 sur 59.
Défi
Créez une méthode nommée processArray qui prend deux arguments :
- Un tableau 1D d'Objects (
data) contenant des types mixtes (Integer, String, ou Double) - Une String (
type) pour le type de traitement : "sum" ou "find"
Votre solution doit démontrer ces concepts :
- Utilisez des clauses de garde pour valider l'entrée au début de la méthode
- Utilisez le pattern matching instanceof pour vérifier et caster les types (par ex.,
if (value instanceof Integer i)) - Utilisez des expressions switch avec la syntaxe flèche (par ex.,
switch (type) -> {) - Utilisez des boucles étiquetées avec break ou continue (par ex.,
search: for())
Règles de traitement :
- "sum" : Ajoutez toutes les valeurs numériques (ignorez les chaînes)
- "find" : Trouvez la première valeur numérique supérieure à 100
Les messages de retour doivent être :
- Si le tableau est null ou vide : retournez "Invalid input"
- Si le type est invalide : retournez "Invalid type"
- Pour "sum" : retournez "Sum: X"
- Pour "find" : retournez l'index de la valeur trouvée ou "Not found"
Essayez vous-même
import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
public class Main {
public static String processArray(Object[] data, String type) {
// Écrivez votre code ici
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String dataJson = scanner.nextLine();
String type = scanner.nextLine();
Type arrayType = new TypeToken<Object[]>(){}.getType();
Object[] data = new Gson().fromJson(dataJson, arrayType);
System.out.println(processArray(data, type));
}
}Toutes les leçons de Logique & Flux
1Tableaux multidimensionnels
Bases des tableaux 2DAccès aux éléments des tableaux 2DBoucles imbriquées avec les tableaux 2DRécapitulatif - Tableaux 2DAddition et soustraction de matricesTableaux irréguliersTableaux 3D et au-delàMotifs courants des tableaux 2DRécapitulatif - Tout sur les tableaux4HashSet Partie 1
Qu'est-ce qu'un HashSet ?Ajouter un ÉlémentSupprimer un ÉlémentVérifier si un Élément ExisteVide et TailleVider et ClonerRécapitulatif - HashSet7Gestion des erreurs de base
Bases du try-catchBloc finallyLever des exceptionsExceptions personnalisées2HashMap Partie 1
Qu'est-ce qu'une HashMap ?Déclarer une HashMapAccéder aux ValeursVérifier si une Clé ExisteModifier les DictionnairesRécapitulatif - HashMap3HashMap Partie 2
Méthodes HashMapItérer avec keySet()Itérer avec entrySet()HashMap imbriquéRécapitulatif - Gérer l'entrepôtRécapitulatif - Opérations HashMap6Flux de contrôle avancé
Instructions étiquetéesExpression switchAppariement de motifsClauses de gardeRécapitulatif - Flux de contrôle9Projet - Compteur de Mots Uniques
Entrée de Texte et StockageTraitement des Mots