list[i]是C#中list.get_item(i)的别名吗
本文关键字:list 别名 item get | 更新日期: 2023-09-27 17:58:21
我将传递一个lambda表达式作为参数。
在这种情况下,someObject
具有someObject.property
可访问的名为property
的属性。
当我通过:o => o.childListOfObjects[0].property
,
其中childListOfObjects
是List<someObejct>
CCD_ 7返回CCD_。
跳到最后:
list[i]
是C#中list.get_item(i)
的别名吗?
get_PropertyName
和set_PropertyName
方法的语法糖。
索引器——例如list[i]
——只是一种特殊类型的属性,基本上是围绕get_Item(i)
和set_Item(i)
方法的语法糖。
(请注意,索引器属性不一定要称为Item
,但它在List<T>
上就是这样称的,这也是自定义类型上索引器的默认名称,除非您使用IndexerNameAttribute
覆盖它。)
List<T>
的文档是这样说的:
默认的Item属性(C#中的索引器)用于检索项目
因此,是的,list[i]
是索引器,这是默认属性,在本例中为Item
。根据上下文是读还是写,它将是get
或set
Item[i]
。
另请参阅:索引器
方括号可以重载,它们被称为索引器。所以我们需要知道list
是什么类的实例。
编辑:哎呀,没看到那个列表就是一个列表。我不知道你的意思是什么,但是,没有List<T>.getItem()
。
不一定。List定义了一个索引器,该索引器很可能只调用get_item,但这并不能保证,索引器中可能定义了更多隐藏逻辑。。。但答案可能是肯定的。