Hola a todos. ¿Hay alguna manera de copiar solo una parte de una única (o mejor aún, una) dos dimensiones de la lista de cadenas en una nueva lista temporal de cadenas?Copiando una parte de una lista a una nueva lista
Respuesta
Aunque LINQ hace hacer esto fácil y más general que sólo listas (utilizando Skip
y Take
), List<T>
tiene el método GetRange
lo que hace que sea muy fácil:
List<string> newList = oldList.GetRange(index, count);
(Donde index
es el índice de la primer elemento para copiar, y count
es la cantidad de elementos para copiar.)
Cuando dices "dos dimensiones de la lista de cadenas", ¿te refieres a una matriz? Si es así, ¿se refiere a una matriz dentada (string[][]
) o una matriz rectangular (string[,]
)?
no estoy seguro consigo la pregunta, pero me gustaría ver en el Array.Copy función (si por listas de cadenas las que te refieres matrices)
Aquí hay un ejemplo usando C# en .NET Framework 2.0:
String[] listOfStrings = new String[7]
{"abc","def","ghi","jkl","mno","pqr","stu"};
String[] newListOfStrings = new String[3];
// copy the three strings starting with "ghi"
Array.Copy(listOfStrings, 2, newListOfStrings, 0, 3);
// newListOfStrings will now contains {"ghi","jkl","mno"}
FindAll le permitirá escribir un predicado para determinar qué cadenas para copiar:
List<string> list = new List<string>();
list.Add("one");
list.Add("two");
list.Add("three");
List<string> copyList = list.FindAll(
s => s.Length >= 5
);
copyList.ForEach(s => Console.WriteLine(s));
Esto imprime "tres", porque tiene 5 o más caracteres. Los otros son ignorados.
- 1. ToList() - ¿Crea una nueva lista?
- 2. Copiando parte de una cadena en C
- 3. Cómo creo una nueva lista a partir de una plantilla de lista (Modelo de objetos cliente)
- 4. ¿Cómo puedo crear una nueva lista de la lista existente?
- 5. Python: crea una nueva lista de una lista cuando se cumple una determinada condición
- 6. cómo copiar una lista a una nueva lista, o recuperarla por valor en C#
- 7. ¿Cómo reverso una parte (porción) de una lista en Python?
- 8. Ordenar una parte de una lista en su lugar
- 9. Generar una nueva lista con la tecla
- 10. Parte en negrita de una opción en una lista desplegable
- 11. una lista> una lista de listas
- 12. ¿Qué es una lista frente a una lista de arreglos?
- 13. Creando una nueva lista que agrega y suma elementos de una lista anterior
- 14. Luchando con la sintaxis de división para unirse a elementos de la lista de una parte de una lista
- 15. Copiando parte de QTableView
- 16. C# - Dumping una lista a una lista desplegable
- 17. Use LINQ y C# para hacer una nueva lista de una lista anterior
- 18. Cómo hacer una nueva lista con una propiedad de un objeto que está en otra lista
- 19. convertir una lista de listas en una sola lista
- 20. Scala - convertir Lista de listas en una sola Lista: Lista [Lista [A]] en Lista [A]
- 21. Usando LINQ al grupo una lista de objetos en una nueva lista agrupada de lista de objetos
- 22. Copiando una estructura a otra
- 23. lanzar una lista a una colección
- 24. Agregar una cadena a una lista
- 25. ¿Obtener una lista de mutex?
- 26. Cómo accedo parte de una lista de Jinja2
- 27. anexar tuplas a una lista
- 28. Convertir datos.Secuencia a una lista?
- 29. Añadir propiedad a una lista?
- 30. data.frame filas a una lista
Esta es una copia superficial de la lista (Esto no copia la lista a la nueva lista, tiene las referencias). Por lo tanto, debe tener cuidado –
@Diode: copia el contenido de la lista en la nueva lista; el contenido de la lista * son * referencias de cadena. Tiene razón en que es una copia superficial, pero como las cuerdas son inmutables, una copia superficial es casi indistinguible de una copia profunda de todos modos. –