/ / Има ли еквивалент на String.Split, който връща генеричен списък? - vb.net, генерични лекарства

Има ли еквивалент на String.Split, който връща генеричен списък? - vb.net, генерични лекарства

Бих искал да направя нещо подобно:

Dim Foo as String = "a,b,c,d,e"
Dim Boo as List(of String) = Foo.Split(","c)

Разбира се Foo.Split връща едноизмерния масив от String, не е родово List, Има ли начин да направите това без итерация чрез масива, за да го превърнете в родово List?

Отговори:

32 за отговор № 1

Ако не искате да използвате LINQ, можете да направите:

Dim foo As String = "a,b,c,d,e"
Dim boo As New List(Of String)(foo.Split(","c))

7 за отговор № 2

Можете да използвате конструктора на списъка.

String foo = "a,b,c,d,e";
List<String> boo = new List<String>(foo.Split(","));

6 за отговор № 3

Наистина ли се нуждаете от списък <T> или ще го направите <T>? Тъй като низ [] вече изпълнява последната ... просто още една причина, поради която си струва програмирането на интерфейсите, където можете. (Може би в този случай наистина не можете).


4 за отговор № 4

Най-лесният метод вероятно би бил методът AddRange.

Dim Foo as String = "a,b,c,d,e"
Dim Boo as List(of String)

Boo.AddRange(Foo.Split(","c))

0 за отговор № 5

Ако използвате Linq, можете да използвате метода за разширение ToList ()

Dim strings As List<string> = string_variable.Split().ToList<string>();

0 за отговор № 6

Ето как го правя ... тъй като разделянето търси масив от знак I клип от първата стойност в моя низ.

var values = labels.Split(" "[0]).ToList<string>();

0 за отговор № 7

За да надграждам отговора, намерих следното много полезно:

Return New List(Of String)(IO.File.ReadAllLines(sFileName))