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
Definire stili a livello di libreria in Angular
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
Disabilitare automaticamente un workflow di GitHub (parte 2)
Utilizzare Model as a Service su Microsoft Azure
Gestione dei nomi con le regole @layer in CSS
Limitare le richieste lato server con l'interactive routing di Blazor 8
Generare un hash con SHA-3 in .NET
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Supportare lo HierarchyID di Sql Server in Entity Framework 8
Usare il colore CSS per migliorare lo stile della pagina
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Utilizzare un service principal per accedere a Azure Container Registry
I più letti di oggi
- Simulare Azure Cosmos DB in locale con Docker
- Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
- .NET Conference Italia 2023 - Milano e Online
- .NET Conference Italia 2024 - Milano
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!