Estoy intentando recorrer las cadenas en una lista con un bucle foreach, pero no sé cómo cambiar el elemento al que se hace referencia. ¿Cómo puedo cambiar s
en la lista … por ejemplo, a continuación, quiero agregar “- “al final de cada cadena, s
en myStringList
foreach(string s in myStringList) { s = s + "-"; }
No puedo hacerle las cosas a s porque es una “variable de iteración de foreach”, ¿no puedo cambiarla a medida que avanzo?
¿Tengo que usar un int
para contar a través?
Estoy seguro de que hay una manera más sencilla …
Puedes hacer esto con Linq muy fácilmente:
var newStringList = myStringList .Select(s => s + "-") .ToList();
Si realmente desea modificar la lista existente, puede usar un bucle clásico for
, por ejemplo:
for (var i = 0; i < myStringList.Count; i++) { myStringList[i] = myStringList[i] + "-"; }
Prueba esto
List listString = new List () { "1","2","3"}; listString=listString.Select(x => x + "-").ToList();