Como é possível inicializar (com um inicializador de C #) uma lista de seqüências de caracteres? Eu tentei com o exemplo abaixo, mas não está funcionando.
List<string> optionList = new List<string>
{
"AdditionalCardPersonAddressType","AutomaticRaiseCreditLimit","CardDeliveryTimeWeekDay"
}();
Respostas:
fonte
new
coisa se você inicializar com{ }
Collections::Generic::List<int>^ mylist = gcnew Collections::Generic::List<int>(gcnew array<int>{0, 1, 2, 3, 4})
new String[]
não é eficiente?Basta remover
()
no final.fonte
List<string> optionList = new List<string>() { "AdditionalCardPersonAdressType", /* rest of elements */ };
. Observe o()
aqui:new List<string>()
.Você realmente não fez uma pergunta, mas o código deve ser
ou seja, não à direita () após a lista.
fonte
Acima, duas são as formas mais curtas, consulte https://www.dotnetperls.com/list
fonte
string[]
var animals = new List<string> { "bird", "dog" };
não foi sugerido na resposta aceita. Além disso,(new string[]
há um comando de adição na resposta aceita que pode ser evitado.Sua função está ótima, mas não está funcionando porque você coloca o
()
depois do último}
. Se você mover()
para o topo, próximo aonew List<string>()
erro, será interrompido.Amostra abaixo:
fonte
É assim que você inicializa e também pode usar List.Add () caso queira torná-lo mais dinâmico.
Dessa forma, se você estiver recebendo valores do IO, poderá adicioná-lo a uma lista alocada dinamicamente.
fonte
Mova colchetes como este:
fonte
Um recurso muito interessante é que o inicializador de listas também funciona bem com classes personalizadas: você precisa implementar a interface IEnumerable e ter um método chamado Add .
Por exemplo, se você tem uma classe personalizada como esta:
isso vai funcionar:
fonte
fonte
É assim que você faria.
Não se esqueça de adicionar
fonte