Indexer (programming): Difference between revisions

Content deleted Content added
m cite repair;
Example: adjust code
Line 11:
| website= .net Funda
| title = C# Interview Questions
| url = httphttps://www.dotnetfunda.com/interview/exam4161-what-is-an-indexer-in-csharp-.aspx}}</ref>
 
<syntaxhighlight lang="csharp">
class OurFamilyFamily
{
private List<string> familyMembers_familyMembers;
public OurFamily(params string[] pMembers)
 
public OurFamilyFamily(params string[] pMembersmembers)
{
familyMembers_familyMembers = new List<string>();
familyMembers_familyMembers.AddRange(pMembersmembers);
}
 
private List<string> familyMembers;
public string this[int index]
{
// The get accessor
get => _familyMembers[index];
get
{
return familyMembers[index];
}
 
// The set accessor with
set => familyMembers_familyMembers[index] = value;
set
{
familyMembers[index] = value;
}
}
 
Line 42 ⟶ 36:
{
// Getting index by value (first element found)
get => return familyMembers_familyMembers.FindIndex(m => m == val);
get
{
return familyMembers.FindIndex(m => m == val);
}
}
 
public int Length => familyMembers_familyMembers.Count;
}
</syntaxhighlight>
Line 58 ⟶ 48:
void Main()
{
var doeFamily = new OurFamilyFamily("John", "Jane");
for (int i = 0; i < doeFamily.Length; i++)
{
Line 70 ⟶ 60:
In this example, the indexer is used to get the value at the nth position, and then to get the position in the list referenced by its value.
The output of the code is:
John is the member number 0 of the doeFamily
Jane is the member number 1 of the doeFamily
 
== See also ==