Лямбда-вопрос - PullRequest
       5

Лямбда-вопрос

0 голосов
/ 18 марта 2009

Я пытаюсь выучить лямбду в C # 3, и мне интересно, как эта функция будет написана с использованием лямбда-выражений:

Допустим, у вас есть коллекция значений Point3.

Для каждого из этих пунктов p:

создать новый p, где .Y:

Math.Sin ((center - p).Length * f)

center и f - внешние переменные, предоставляемые функции. Также тип Point3 будет иметь конструктор, который принимает значения x, y, z.

Ответы [ 2 ]

7 голосов
/ 18 марта 2009

Входная коллекция source, выходная коллекция result:

IEnumerable<Point3> source = ...

IEnumerable<Point3> result = source.Select(p => new Point3(p.x, Math.Sin ((center - p).Length * f), p.z);
1 голос
/ 18 марта 2009
List<Point> oldList = .....;
List<Point> newList = List<Point> ();
double center = ...;
double f = ....;

oldList.ForEach(p=> 
   newList.Add(new Point(p.X, Math.Sin ((center - p).Length * f), p.Z)););
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...