2017-07-19 1 views
-1

C'est un concept que j'essaie de comprendre pour mon programme. Le code suivant a été modifié à des fins d'explication. Espoir mon objectif est clairComment afficher tous les contenus d'une liste?

Dim List As New List(Of String)() 'the size and contents of the list is not constant 
Dim test As String 

List.Add("Hello") 
List.Add("World") 

    test = Nothing 
    For Each test In errorsList 
     Console.WriteLine(test) ' outputs "Hello" and "World" 

    Next 
    MsgBox(test) 'Outputs "World" 

Comment puis-je avoir test sortie à la fois "Hello" et "World" pour que je puisse l'utiliser plus tard dans mon code?

+0

'String.Join (...)'? – Plutonix

Répondre

0

Vous pouvez ajouter

test = String.Join(" ", list) 

avant MsgBox

0

La question que vous écrasez est la chaîne à chaque fois, alors vous devez être l'étendre, mais en ajoutant l'élément suivant sur la liste, il .

Comme suggéré ci-dessus, vous pouvez utiliser String.Join(" ", list).

Il existe d'autres façons de concaténer une chaîne, l'utilisation d'une esperluette en est une (&). Pourquoi ne pas simplement afficher la liste dans la boîte de message, n'est-ce pas plus facile?

+0

Si je publie 'list.toString' dans une boîte de message, j'obtiens" System.Collections.Generic.List " –

+1

@RogerRivas Harambe n'a rien dit à propos de' list.ToString() '. Aussi, commentaire sur cette réponse, je n'utiliserais pas & pour une liste, au cas où d'autres éléments seraient ajoutés. 'String.Join' et' IEnumberable.Aggregate (Of String)() '(ou StringBuilder) prendront en charge de plus grandes collections de chaînes que seulement deux éléments et devraient être préférés lorsque la croissance est possible. – djv