In alcuni tipi di applicazioni capita spesso di dover estrarre randomicamente elementi, anche ripetuti, da una lista di oggetti; ad esempio, nei giochi di memoria si devono estrarre degli oggetti da una lista e l'utente deve ricordarne l'ordine. .NET 8 introduce sulle classi Random e RandomNumberGenerator un nuovo metodo che semplifica questo compito: GetItems[T]. Questo metodo prende in input una lista di oggetti e un numero di estrazioni da fare. Se il numero di estrazioni è superiore alle dimensioni della lista, allora gli oggetti vengono estratti più volte. Vediamo il metodo in azione.
private List<string> strings = new[] { "Cristian", "Daniele", "Elisa", "Marco", "Matteo", "Morgan", "Stefano" }; string[] round = Random.Shared.GetItems(strings, 10);
In questo esempio, si ha una lista con sette elementi, ma devono esserne estratti dieci. Questo significa che ci saranno elementi ripetuti nella variabile round.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Migliorare l'organizzazione delle risorse con Azure Policy
Limitare le richieste lato server con l'interactive routing di Blazor 8
Disabilitare automaticamente un workflow di GitHub
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Criptare la comunicazione con mTLS in Azure Container Apps
Routing statico e PreRendering in una Blazor Web App
Sostituire la GitHub Action di login su private registry
Aggiornare a .NET 9 su Azure App Service
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Creare una libreria CSS universale - Rotazione degli elementi
Creare gruppi di client per Event Grid MQTT