笔记

### 笔记:

1. 如何删除一列数据中的某一批数据 

A. // 从后往前删除   for(int i = list.count()-1; i>=0; i++); 

B. // 设置标记删除 dt.Rows[i].Delete(); dt.AcceptChanges(); // 提交 dt.RejectChanges();

2. LAMDA表达式  

Eq: list.Find(Predicate<T> match); // 函数或者lamda表达式 第一个匹配

Eq: T= list.FindLast(Predicate<T> match) ;// 查找最后一个

Eq: bool = list.TrueForAll(Predicate<T> match); // 所有元素都匹配返回true

Eq: List<T> = list.FindAll(Predicate<T> match) ;// 所有匹配成功的元素返回

Eq: List<T> = list.Take(n); // 获取前n行

Eq: List<T> = list.Where(Predicate<T> match); // 获取条件匹配元素

Eq: int = list.RemoveAll(Predicate<T> match) ;// 删除所有满足条件的元素,list为删除后结果

Eq: int = list.IndexOf(T t); // 返回当前元素索引

// 代码示例

List<String> list = new List<String>();


string listFind = mList.Find(
   
   name=>{

      return name.Length > 3 ? true : false;

   }

)

3. Delegate, Func, Action, Predicate 各种委托区别

 Delegate至少0个参数,至多32个参数,可以无返回值,也可以指定返回值类型。这个是祖宗。
 Func可以接受0个至16个传入参数,必须具有返回值。
 Action可以接受0个至16个传入参数,无返回值。
 Predicate只能接受一个传入参数,返回值为bool类型
Lamda表达式可以定义委托 p=>{Console.WriteLine(p);}

清空委托声明:
A.while(this.OnDelegate != null) this.OnDelegate -= this.OnDelegate;

B.System.Delegate[] dels = this.OnDelegate.GetInvocationList();  //所有委托名

4.委托的特点:

委托类似于 C++ 函数指针,但它们是类型安全的。
委托允许将方法作为参数进行传递。
委托可用于定义回调方法。
委托可以链接在一起;例如,可以对一个事件调用多个方法。
方法不必与委托签名完全匹配。

5.其他

Eq: A.list.Contains(orlc,new ITEM_GIDComparer) // 数据量大时使用

    B.list.Exists(x=>x.ITEM_GID == olrc.ITEM_GID);// 数据量小时使用

Eq: 当集合是來自不确定个数的IEnumerable<T>时,请使用 Any().

    当集合是來自外部数据 (ex: LINQto SQL, LINQ to Entities) 时,请使用 Any().

    当集合是來自 .NET Framework 內建的集合时,请使用 Count() .

Eq: yield return:向枚举器返回值,按需供给,数据不是一次性加载到内存,而是希望获取	一个给一个。

    yield breadk; 迭代结束

Eq: SELECT * FROM dbo.Table1 A(NOLOCK)

CROSS APPLY dbo.fnpbConvertStringToTable(A.sList,',') B

ORDER BY A.ID



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值