[英]String.Contains doesn't require parameters in c#?
我偶然發現了這段代碼:
var knownSeparators = new[] { "\\", "/", "|", "." };
return knownSeparators.FirstOrDefault(path.Contains);
其中path是一個字符串,返回值也應該是一個字符串。
盡管path.Contains的intellisense建議一個參數,沒有一個它可以正常工作。
這是如何工作的? 有沒有辦法在vb.net中復制此行為?
FirstOrDefault
接受一個委托(一個Func<T, bool>
),這個調用正在從方法組創建一個委托。 它相當於:
Func<string, bool> predicate = path.Contains;
return knownSeparators.FirstOrDefault(predicate);
我懷疑在VB.NET中你可以做到:
Return knownSeparators.FirstOrDefault(AddressOf path.Contains)
......但是如果沒有嘗試,我無法確定。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.