C# Conversion de List<int> Liste<double>

J'ai un List<int> et je veux le convertir en un List<double>. Est-il possible de faire d'autres que de simplement en parcourant les List<int> et l'ajout d'un nouveau List<double> comme suit:

List<int> lstInt = new List<int>(new int[] {1,2,3});
List<double> lstDouble = new List<double>(lstInt.Count);//Either Count or Length, I don't remember

for (int i = 0; i < lstInt.Count; i++)
{
    lstDouble.Add(Convert.ToDouble(lstInt[0]));
}

Est-il une façon élégante de faire cela? Je suis à l'aide de C# 4.0, donc la réponse peut prendre avantage des nouvelles fonctionnalités de langage.

  • (pour la petite histoire, notez que le C# 4.0 variance ne fonctionne pas sur le béton-types (List<T>), ne fonctionne pas sur les listes en général (IList<T>), et ne fonctionne pas entre int et double)
InformationsquelleAutor Ames | 2010-01-18