반응형
C #에서 F # List.map에 해당합니까?
C #에서 F #의 List.map 함수에 해당하는 것이 있습니까? 즉, 목록의 각 요소에 함수를 적용하고 결과를 포함하는 새 목록을 반환합니다.
다음과 같은 것 :
public static IEnumerable<TResult> Map<TSource, TResult>(this IEnumerable<TSource> source, Func<TSource, TResult> funky)
{
foreach (TSource element in source)
yield return funky.Invoke(element);
}
이미 내장 된 방식이 있습니까, 아니면 사용자 지정 확장을 작성해야합니까?
즉 LINQ의이다 Select
- 즉
var newSequence = originalSequence.Select(x => {translation});
또는
var newSequence = from x in originalSequence
select {translation};
ConvertAll
내장 함수입니다.
public List<TOutput> ConvertAll<TOutput>(
Converter<T, TOutput> converter
)
.NET 버전 2.0부터 사용할 수 있습니다.
MSDN 코드 예 :
using System;
using System.Drawing;
using System.Collections.Generic;
public class Example
{
public static void Main()
{
List<PointF> lpf = new List<PointF>();
lpf.Add(new PointF(27.8F, 32.62F));
lpf.Add(new PointF(99.3F, 147.273F));
lpf.Add(new PointF(7.5F, 1412.2F));
Console.WriteLine();
foreach( PointF p in lpf )
{
Console.WriteLine(p);
}
List<Point> lp = lpf.ConvertAll(
new Converter<PointF, Point>(PointFToPoint));
Console.WriteLine();
foreach( Point p in lp )
{
Console.WriteLine(p);
}
}
public static Point PointFToPoint(PointF pf)
{
return new Point(((int) pf.X), ((int) pf.Y));
}
}
/* This code example produces the following output:
{X=27.8, Y=32.62}
{X=99.3, Y=147.273}
{X=7.5, Y=1412.2}
{X=27,Y=32}
{X=99,Y=147}
{X=7,Y=1412}
*/
참고 URL : https://stackoverflow.com/questions/1594000/f-list-map-equivalent-in-c
반응형
'Program Tip' 카테고리의 다른 글
mysql 테이블 auto_increment (사후)에 ID를 만드십시오. (0) | 2020.12.11 |
---|---|
일치하는 행을 삭제하는 더 빠른 방법? (0) | 2020.12.11 |
Bash의 변경 가능한 목록 또는 배열 구조? (0) | 2020.12.11 |
PowerShell에서 추가 된 유형을 다시 제거 할 수 있습니까? (0) | 2020.12.11 |
축 제목에 그리스 문자 추가 (0) | 2020.12.11 |