背景:做资金借款申请单的模块,其中借款明细要生成结算单,但是需要将资金账户类型相同的借款金额和审批金额合并,所以有了今天这篇博客。
下面是我做的一个demo,将名称相同的年龄累加。
static void Main(string[] args)
{
List<People> nums = new List<People>();
List<People> newNums = new List<People>();
People p1 = new People(1, "zs");
People p2 = new People(2, "zs");
People p3 = new People(1, "zs");
People p4 = new People(4, "ls");
People p5 = new People(4, "ws");
People p6 = new People(4, "ls");
People p7 = new People(4, "ws");
People p8 = new People(4, "ls");
nums.Add(p1);
nums.Add(p2);
nums.Add(p3);
nums.Add(p4);
nums.Add(p5);
nums.Add(p6);
nums.Add(p7);
nums.Add(p8);
for (int i = 0; i < nums.Count - 1; i++)
{
for (int j = nums.Count - 1; j > i; j--)
{
if (nums[j].Name == nums[i].Name)
{
nums[i].age += nums[j].age;
nums.RemoveAt(j);
}
}
}
for (int i = 0; i < nums.Count; i++)
{
Console.WriteLine(nums[i].Name + nums[i].age);
}
Console.Read();
}
}
public class People
{
public People(int age, string name)
{
this.Name = name;
this.age = age;
}
public string Name { get; set; }
public int age { get; set; }
}
任意名称的都可以累加相同名称的年龄,虽然这里没有什么意义,但是算是自己写的一个小算法,还挺有成就感的,哈哈。