【发布时间】:2022-11-05 09:22:29
【问题描述】:
考虑到我有 2 个列表(firstList 和 secondList),它们都具有相同的属性,但具有不同的值。
我需要合并两个列表的结果,但它必须考虑字段IdALuno 与secondList 的ID 匹配的情况,并且它应该对属性Nota 的值求和。
我在这里看到了几个例子,在这种特定情况下没有任何效果。
这是我的预期结果:
- 所有列表中的
idAluno必须出现在finallist - 当
idAluno匹配两个列表时,它应该对字段Nota求和
| IdALuno | Nota |
|---|---|
| 1 | 9 |
| 2 | 4 |
| 3 | 8 |
| 4 | 2 |
| 5 | 3 |
| 6 | 3 |
这是代码:
using System;
using System.Collections.Generic;
using System.Linq;
namespace ConsoleApp1
{
public class Program
{
class Semestre
{
public int Nota { get; set; }
public int IdALuno { get; set; }
}
public static void Main()
{
List<Semestre> firstList = new List<Semestre>();
firstList.Add(new Semestre { IdALuno = 1, Nota = 5 });
firstList.Add(new Semestre { IdALuno = 2, Nota = 4 });
firstList.Add(new Semestre { IdALuno = 3, Nota = 3 });
firstList.Add(new Semestre { IdALuno = 5, Nota = 3 });
List<Semestre> secondList = new List<Semestre>();
secondList.Add(new Semestre { IdALuno = 1, Nota = 4 });
secondList.Add(new Semestre { IdALuno = 3, Nota = 5 });
secondList.Add(new Semestre { IdALuno = 4, Nota = 2 });
secondList.Add(new Semestre { IdALuno = 6, Nota = 3 });
foreach (var item in firstList)
{
Console.WriteLine($"idALuno: {item.IdALuno} / Nota: {item.Nota}");
}
}
}
【问题讨论】: