zoukankan      html  css  js  c++  java
  • list.Contain 与 list.FindIndex()用法记录

    List<Plan> Plans = new List<Plan>();

    //存放服务器中的当前用户所接受的项目计划列表。

    //Plan 类包含PlanID等属性。


    if (Plans.Contains<Plan>(changedPlan, Comparers.Default)){}

    //判断Plans中是否存在与changedPlan相同的Plan。

    //(只需判断其PlanID是否相同即可。其他内容可忽略)

    // Comparers.Default为自定义比较器。



    public class Comparers : IEqualityComparer<Plan>

    {

    //比较器定义其继承与IEqualityComparer<Plan>接口

    public static Comparers Default = new Comparers();

    #region IEqualityComparer<Plan> 成员

    public bool Equals(Plan x, Plan y)
    {

    return x.PlanID.Equals(y.PlanID);//比较PlanID是否相同

    }

    public int GetHashCode(Plan obj)

    {

    return obj.PlanID.GetHashCode();

    }

    #endregion

    }

    List<Plan> Plans = new List<Plan>();

    Plans.FindIndex(new Predicate<Plan>(findPlan));//在Plans中查找与给定PlanID相同的Plan的Index

    bool findPlan(Plan p)//比较器(这里的p为Plans中的元素,即p.PlanID与给定的PlanID比较)

    {

     return p.PlanID.Equals(PlanID);

    }
  • 相关阅读:
    poj- 2528 Mayor's posters
    POJ 2631 Roads in the North (树的直径裸题)
    Quoit Design (白话--分治--平面点对问题)
    洛古 P1020 导弹拦截 (贪心+二分)
    D
    代理模式---动态代理之Cglib
    代理模式---动态代理之JDK
    开闭原则
    迪米特法则
    接口隔离原则
  • 原文地址:https://www.cnblogs.com/shenyixin/p/2260668.html
Copyright © 2011-2022 走看看