C#方括号,用于访问带字符串的对象

时间:2018-02-08 14:03:21

标签: c# .net

我不明白这个方括号,我必须创建的,这个代码行正常工作,仅用于测试。

        filetype = dataBandREP["VRZ.Parent.SIGNATUR"].ToString();

4 个答案:

答案 0 :(得分:0)

方括号表示您正在引用一个集合,并且在该集合中,您需要“VRZ.Parent.SIGNATUR”。 []是一个以字符串作为参数的索引器。

答案 1 :(得分:0)

此代码: filetype = dataBandREP["VRZ.Parent.SIGNATUR"].ToString(); 使用某种集合的索引器,引用一个对象,然后将其转换为字符串格式,以填充filetype变量。

这种情况的一个常见用法是使用数组和DataColumn集合。字符串索引器允许您根据列标题获取值,而不是知道DataTable.Columns集合中的哪个整数索引与列关联。

调试时会遇到不同的行为,因为"VRZ.Parent.SIGNATUR"作为字符串索引器的有效性已发生变化,可能是因为实际数据源发生了变化。这是假设你得到一个空引用或类似的。在不知道你得到什么样的例外的情况下,我们无法帮助更多。

答案 2 :(得分:0)

C#可以重载运算符,包括方括号。

public class Example
{
    public string this[string s] // square bracket operator with string argument
    {
        get 
        {
            return somethingToReturnString;
        }
        set
        {
            somethingToSetString = value;
        }
    }

    public string this[int i] // square bracket operator with int argument
    {
        get 
        {
            return somethingToReturnInt;
        }
        set
        {
            somethingToSetInt = value;
        }
    }
}

答案 3 :(得分:0)

下面的语法也可以使用..我的类是从某个类型为“ AttributeValue”的ReadOnlyDictionary派生的,并且它导出双精度值。它在出现以下情况时为用户提供一个错误框 找不到该值。

ggplot(var1, aes(x=dist,y=gamma)) +
geom_point()