Cursus Raku / Addendum 🆕 / Cursus et functiones / Subprogrammata et stilus functionalis / Exercises / Ordinare per duas claves
Solutio: Ordinare per duas claves
Ecce solutio possibilis huius exercitationis.
Codex
my @people =
{ name => 'Anna', age => 30 },
{ name => 'Bob', age => 25 },
{ name => 'Cara', age => 30 };
for @people.sort({ .<age>, .<name> }) -> %person {
say "%person<name> (%person<age>)";
}🦋 Inveni codicem fontem in archivo sort-by-two-keys.raku.
Exitus
Bob (25)
Anna (30)
Cara (30)Commentarii
Cum blocus
.sortindicem reddit, Raku secundum primum elementum comparat, deinde secundum alterum — itaque{ .<age>, .<name> }primum secundum aetatem ordinat et nomine solum ad aequalitates dirimendas utitur.Anna et Cara aetatem
30communem habent, itaque alphabetice ordinantur; Bob, iunior cum sit, primus venit.