Jef*_*f B 7 vb.net method-group
James Michael Hare最近写了一篇关于Char静态方法的博客文章.他谈到使用方法组来编写不那么冗长的LINQ:
if (myString.Any(c => char.IsLower(c))) { xyzzy(); }
if (myString.Any(char.IsLower)) { xyzzy(); } // Less wordy FTW!
Run Code Online (Sandbox Code Playgroud)
VB.NET中的等价物是:
If myString.Any(Function(c) Char.IsLower(c)) Then xyzzy()
If myString.Any(Char.IsLower) Then xyzzy() 'Compiler error
Run Code Online (Sandbox Code Playgroud)
可悲的是,我不能在这里做相当于C#...编译器告诉我Overload resolution failed because no accessible 'IsLower' accepts this number of arguments......悲伤.我认为这可能是由于我已经Option Strict开始,但唉,这也不起作用.
我假设方法组在VB.NET中不可用... VB.NET中是否有类似的功能?或者为什么不能(不会)在VB.NET中完成的任何特殊原因?
Mag*_*nus 10
等效的VB代码是:
If myString.Any(AddressOf Char.IsLower) Then xyzzy()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
778 次 |
| 最近记录: |