tworzenie pustych list

Odpowiedz Nowy wątek
2019-09-12 15:18
0

Mam problem. W jaki sposób mógłbym stworzyć używając pętli 10 pustych list nazwanych kolejno: lista1, lista2, ... lista10?

Może to problem XY, więc zapytam: po co? :P - nobody01 2019-09-12 15:25

Pozostało 580 znaków

2019-09-12 15:22
2

Jak dla mnie to nie da się. Możesz co najwyżej użyć Dictionary<string, List<t>>

Pozostało 580 znaków

2019-09-12 15:48
0

Nie da się, bo nazwy, które im nadajesz są dla Ciebie, w kodzie wynikowym ich nie ma.

To czego chciałbyś użyć i potrzebujesz to tablice.

Pozostało 580 znaków

2019-09-12 15:56
1
var dic=new Dictionary<string, List<Typ>>();
for(int i=1;i<10;++i) dic["list"+i.ToString()]=new List<Typ>();
...
List<Typ> L=dic["list7"];

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

2019-09-12 16:48
1

Wszystko się da zrobić pętlą.

using Microsoft.CSharp;
using System;
using System.CodeDom.Compiler;
using System.Text;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            var options = new CompilerParameters();
            options.GenerateExecutable = false;
            options.GenerateInMemory = false;

            var parameters = new CompilerParameters
            {
                GenerateExecutable = true,
                OutputAssembly = "out.exe"
            };

            var sb = new StringBuilder();
            for (int i = 1; i <= 10; i++)
            {
                sb.AppendLine($"var list{i} = new System.Collections.Generic.List<string>();");
            }

            var code = $"class Program {{ static void Main(string[] args) {{ {sb} }} }}";

            var provider = new CSharpCodeProvider();
            var compilerResult = provider.CompileAssemblyFromSource(parameters, code);
            foreach (var error in compilerResult.Errors)
            {
                Console.WriteLine(error);
            }

            Console.ReadLine();
        }
    }
}

"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."
Fajne, ale autor pytania pewnie chcialby moc skorzystac z tych list - szydlak 2019-09-12 16:59
Są w exeku, niech korzysta. :) - somekind 2019-09-12 17:01

Pozostało 580 znaków

2019-09-12 19:14
0

Wcale nie potrzebujesz pętli

var dict = Enumerable.Range(1, 10).ToDictionary(i => $"Lista{i}", new List<Typ>());
dict["Lista1"].Add(new Typ());

nie testowane.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0