在声时一个数组string[] str = new string[3]; 后,可以使用 str[2] 访问到第三个元素的值。我自己写了
private struct bucket
{
public object key;
public object val;
}private bucket[] buckets;publci myArray(int size){
buckets = new bucket[size];
//加入很多条数据
buckets[0].key = "XX";
buckets[0].val = "AA";
.....
}public string Get(strig Key){
//取得值并返回
}现在可以使用
myArray arr = new myArray(10);
arr.Get("XX") 通过调用Get方法找到值返回。 请问如何写才可以实现 arr["XX"] 就可以取得对应的返回值?需要在上面代码加入什么方法或什么,才可以接收[]传入的参数?
private struct bucket
{
public object key;
public object val;
}private bucket[] buckets;publci myArray(int size){
buckets = new bucket[size];
//加入很多条数据
buckets[0].key = "XX";
buckets[0].val = "AA";
.....
}public string Get(strig Key){
//取得值并返回
}现在可以使用
myArray arr = new myArray(10);
arr.Get("XX") 通过调用Get方法找到值返回。 请问如何写才可以实现 arr["XX"] 就可以取得对应的返回值?需要在上面代码加入什么方法或什么,才可以接收[]传入的参数?
继承ICollection
{
private bucket[] buckets; //这里最好用hashtable
public bucket this[string key]
{
for( int i=0 ; i<buckets.Length ; i++ )
{
if( key = buckets[i].key)
return buckets[i];
}
return null;
}
}
public object this [string Key]
{
get
{
//实现的方法
}
}