Объединение строк с лямбда-выражением - PullRequest
2 голосов
/ 25 января 2010

У меня есть строковый массив Array1 и строковый массив A2. Я хочу объединить их в 3-м массиве A3, но исключая повторяющиеся значения. Это можно сделать с помощью лямбда-выражений или только путем итерации по массиву и проверки массива. Contains ()?

Ответы [ 3 ]

1 голос
/ 25 января 2010
array1.Union(array2).Distinct().ToArray();
0 голосов
/ 22 апреля 2014
    public static Expression<Func<T, TResult>> And<T, TResult>(this Expression<Func<T, TResult>> expr1, Expression<Func<T, TResult>> expr2)
    {
        var invokedExpr = Expression.Invoke(expr2, expr1.Parameters.Cast<Expression>());
        return Expression.Lambda<Func<T, TResult>>(Expression.AndAlso(expr1.Body, invokedExpr), expr1.Parameters);
    }

    public static Expression<Func<T, bool>> Or<T>(this Expression<Func<T, bool>> expr1, Expression<Func<T, bool>> expr2)
    {
        var invokedExpr = Expression.Invoke(expr2, expr1.Parameters.Cast<Expression>());
        return Expression.Lambda<Func<T, bool>>(Expression.OrElse(expr1.Body, invokedExpr), expr1.Parameters);
    }
0 голосов
/ 25 января 2010

Вы можете сделать следующее

Dim newArray = array1.Union(array2).Distinct().ToArray()

Для этого требуется Visual Studio 2008 или выше (VB.Net 9.0).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...