0

例如,我知道我能够做到这一点:

string x = Int32.Parse("123").ToString();

代替:

int y = Int32.Parse("123");
string x = y.ToString();

因为Parse()方法返回和整数,然后我可以ToString()在整数上使用方法。但是这种技术叫什么?我无法用语言来谷歌以获取更多信息。是 .NET/高级编程的 yummies,还是你也可以用低级编程语言来做到这一点,比如 C?

4

5 回答 5

4

它被称为方法链。有关更多信息,请参见此处:方法链

我认为从上述 wiki 中得到的重要一点是:

不需要方法链接。它只会潜在地提高可读性并减少源代码的数量。它是构建Fluent Interface背后的核心概念。

于 2012-10-22T10:29:19.793 回答
2

这就是所谓的方法链。这是详细信息:

通用方法链 

您可能希望看到这篇关于 LINQ 的文章

了解LINQ to Objects(二)方法链

文章中的示例:

int[] source = new int[] { 0, 1, -2, 3, 24, 6, 3 };
var results = source.Where(item => item > 0 && item < 10)
                    .OrderBy(item => item)
                    .Select(item => item.ToString(CultureInfo.InvariantCulture))
于 2012-10-22T10:29:44.783 回答
1

将其称为“方法链”,将其输入 Google,您应该会得到一些有用的结果!

于 2012-10-22T10:30:04.253 回答
1

它是方法链,更极端地可以用来创建流畅的接口。这是(方法链所述)LINQ 的基础。

由于这提供了可能发生异常的更大表面积,因此如果您需要在此过程中检查您的假设(检查空值等),则不建议这样做。

于 2012-10-22T10:34:32.507 回答
0

是的.. 正如每个人所说,这是一种方法链接。如果你注意到的话,这甚至存在于 jQuery 中。

$('#id').show(300).html('XYZ').hide(500);

于 2012-10-22T10:47:25.157 回答