88得票8回答
Swift扩展示例

我最初是想知道怎样制作类似于这样的东西UIColor.myCustomGreen 因此,我希望能够定义自己的颜色并在整个应用程序中使用它们。我以前学过扩展,认为可以用它们来解决我的问题,但我记不清具体如何设置扩展了。在撰写本文时,搜索“Swift 扩展”在谷歌上给出了文档、若干篇较长的教程和一...

85得票30回答
你找到了哪些扩展方法的优点?

一位对C#持怀疑态度的人问我扩展方法(extension methods)的目的是什么。我解释说,通过扩展方法,你可以为已定义的对象添加新的方法,特别是当你不拥有/控制原始对象的源代码时。 他提出了一个问题:“为什么不直接在自己的类中添加方法?”我们一直在围绕这个问题讨论(以好的方式)。我的...

82得票7回答
反射技术用于识别扩展方法

在C#中,是否有使用反射来确定方法是否已作为扩展方法添加到类中的技术?如果有一个像下面所示的扩展方法,是否可以确定Reverse()已被添加到字符串类中?public static class StringExtensions { public static string Revers...

81得票8回答
如何比较可空类型?

我有几个地方需要比较2个(可空)值,看它们是否相同。 我认为框架应该有支持这种操作的功能,但却找不到任何东西,所以我使用了以下代码:public static bool IsDifferentTo(this bool? x, bool? y) { return (x.HasValue...

81得票7回答
C#扩展方法能访问私有变量吗?

使用扩展方法可以访问对象的私有变量吗?

79得票8回答
可以在IComparer或IEqualityComparer或任何单方法接口的位置上传递lambda表达式吗?

我看到一些代码,其中这个人将lambda表达式传递给了一个期望IComparer或IEqualityComparer的ArrayList.Sort(IComparer here)或IEnumerable.SequenceEqual(IEnumerable list, IEqualityComp...

74得票11回答
C#中是否可以实现混合?

我听说使用扩展方法是可能的,但我自己无法完全弄清楚。如果可能的话,我想看到一个具体的例子。 谢谢!

73得票40回答
你所见过的最好或最有趣的扩展方法使用是什么?

我开始真的喜欢扩展方法... 我正在想是否有人在这里发现了真正令人惊叹或聪明的例子。 我今天写的一个例子: 由于其他用户的评论而编辑:public static IEnumerable<int> To(this int fromNumber, int toNumber) { ...

71得票43回答
你最喜欢的LINQ to Objects运算符是什么,它不是内置的?

使用扩展方法,我们可以编写方便的LINQ操作符来解决通用问题。 我想听听您在System.Linq命名空间中缺少哪些方法或重载以及您如何实现它们。 干净而优雅的实现,最好使用现有的方法。

68得票7回答
私有扩展方法是否存在?

假设我需要一个简单的私有辅助方法,并且在代码中直觉上使用扩展方法是很有意义的。有没有一种方式可以将该辅助方法封装到只有实际需要使用它的类中? 例如,我尝试这样做:class Program { static void Main(string[] args) { ...