# 2020-04-09 | Kotlin | Collections ###### tags: `kotlin` `android` `gobelins` ## Exercice ### Enoncé 1. Créer une classe Etudiant avec les attributs : name, code, sexe, adresse, age 2. Créer une liste de 10 étudiants 3. Ordonner la liste par en fonction de l'âge 4. Grouper les éléments en fonction de leur sexe 5. Extraire la liste des filles et des garçons 6. Modifier le nom du premier garçon de la liste principale, qu’observezvous ? 7. Créer une liste contenant uniquement le nom des étudiants 8. Supprimer tous les étudiants d’un sexe donné 9. Inverser la liste 10. Vider la liste ### Code ```kotlin // 1. Créer une classe Etudiant data class Etudiant ( var code:String, var name:String, var adresse:String, var sexe:String, var age:Int ) // 2. Créer une liste de 10 étudiants val etudiants = mutableListOf<Etudiant>() etudiants.add(Etudiant("1724","Valentin","Morzine","Homme",21)) etudiants.add(Etudiant("4580","Aurélie","Lyon","Femme",32)) etudiants.add(Etudiant("6529","Elsa","Chambéry","Femme",12)) etudiants.add(Etudiant("0986","Patrick","Annecy","Homme",19)) etudiants.add(Etudiant("6591","Laura","Grenoble","Femme",45)) etudiants.add(Etudiant("8945","Edouard","Morzine","Homme",26)) etudiants.add(Etudiant("2856","Eddy","Aix les Bains","Homme",45)) etudiants.add(Etudiant("4458","Cloé","Annecy","Femme",21)) etudiants.add(Etudiant("5855","William","Ambérieux","Homme",30)) etudiants.add(Etudiant("6856","Jessica","Lyon","Femme",18)) // 3. Trier les étudiants par leur age etudiants.sortBy { it.age } println(etudiants) // 4. Grouper le tableau // 5. Extraire la liste des filles et des garçons println(etudiants.groupBy { it.sexe }.get("Femme")) println(etudiants.groupBy { it.sexe }.get("Homme")) // 6. Afficher le nom du premier garçon println(etudiants.first { it.sexe == "Homme" }.name) // 7. Créer une liste avec les noms des étudiants val etudiantsNoms = mutableListOf<String>() etudiants.forEach { etudiantsNoms.add(it.name) } println(etudiantsNoms) // 8. Supprimer tout les éléments d'un sexe donné etudiants.removeIf { it.sexe == "Femme" } println(etudiants) // 9. Inverser la liste println(etudiants.reversed()) // 10. Vider la liste etudiants.clear() println(etudiants) ```