String type indexer
In this chapter you will learn:
String value indexer
We can index value in a class by using string value indexer.
class DayCollection
{/*from j a v a 2 s . c om*/
string[] days = { "Sun", "Mon", "Tues", "Wed", "Thurs", "Fri", "Sat" };
private int GetDay(string testDay)
{
for(int j = 0; j < days.Length; j++)
{
if (days[j] == testDay)
{
return j;
}
}
throw new System.ArgumentOutOfRangeException(testDay, "testDay must be in the form \"Sun\", \"Mon\", etc");
}
public int this[string day]
{
get
{
return (GetDay(day));
}
}
}
class Program
{
static void Main(string[] args)
{
DayCollection week = new DayCollection();
System.Console.WriteLine(week["Fri"]);
System.Console.WriteLine(week["AAA"]);
}
}
int and string indexer
using System;/*from j av a2 s . c o m*/
using System.Collections;
using System.Collections.Specialized;
public class MainClass
{
public static void Main()
{
EmployeeList carLot = new EmployeeList();
carLot["A"] = new Employee("A");
carLot["B"] = new Employee("B");
carLot["C"] = new Employee("C");
Employee zippy = carLot["C"];
Console.WriteLine(zippy.Name);
}
}
public class EmployeeList
{
private ListDictionary carDictionary;
public EmployeeList()
{
carDictionary = new ListDictionary();
}
// The string indexer.
public Employee this[string name]
{
get { return (Employee)carDictionary[name];}
set { carDictionary.Add(name, value);}
}
// The int indexer.
public Employee this[int item]
{
get { return (Employee)carDictionary[item];}
set { carDictionary.Add(item, value);}
}
}
public class Employee
{
public string Name = "";
public Employee(string n)
{
Name = n;
}
}
Next chapter...
What you will learn in the next chapter:
Home » C# Tutorial » Class