0

像标题一样的问题。调用 Write 方法时到底发生了什么?如果我有这样的代码:

int [] t = new int[]{2,1};
Console.Write(t);

是否有可能在不更改写入方法参数(不添加 [0])的情况下显示数字 2?(数组的第一个元素)这段代码会在不同的 .NET 框架版本中给出相同的结果吗?

在 C# 和 ildasm 中使用 Console.WriteLine 的方法

为什么这个方法不写 y 类型?(System.Int32[])

4

1 回答 1

2

不,那是不可能的,因为您必须重新定义toString()Int32[] 的方法。

Console.Write(t) 是简单的Console.Write(t.toString())并且t.toString()Int32[].toString()

的行为Int32[].toString()是简单地返回类型,在这种情况下是 System.Int32[]

因此,要回答您的问题,不,您不能Int32[].toString()返回toString()第一个索引。

于 2012-06-07T19:44:25.093 回答