Tôi muốn thêm hai danh sách của một số loại như vậy addedList [x] = listOne [x] + listTwo [x]Làm cách nào để thêm hai danh sách vào Linq để thêmList [x] = listOne [x] + listTwo [x]?
Sản lượng của danh sách cần phải được một Generic.IEnumerable mà tôi có thể sử dụng trong các truy vấn LINQ trong tương lai.
Trong khi tôi có thể làm điều đó bằng cách sử dụng mã bên dưới, tôi không thể không cảm thấy như phải có một cách tốt hơn. Bất kỳ ý tưởng?
List<int> firstList = new List<int>(new int[] { 1, 3, 4, 2, 5, 7, 2, 5, 7, 8, 9, 0 });
List<int> secondList = new List<int>(new int[] { 4, 6, 8, 3, 1, 5, 9, 3, 0 });
int findex = 0;
ILookup<int, int> flookup = firstList.ToLookup(f =>
{
int i = findex;
findex++;
return i;
}, p => p);
var listsAdded = from grp in flookup
select grp.First() + secondList.ElementAtOrDefault(grp.Key);
foreach (int i in listsAdded)
Console.WriteLine(i);
Điều gì sẽ xảy ra khi danh sách thứ hai dài hơn lần đầu tiên? – Gabe
@gabe - xem giải pháp của tôi bên dưới, nó xử lý danh sách có độ dài khác nhau. –