c#在属性中使用ArrayList

c#在属性中使用ArrayList,c#,class,properties,C#,Class,Properties,我希望能够有一个名为music的类,它有一个名为Hits的规则/属性(这是一个数组列表,有两个名为ListHits()和AddHits(string)的方法) ListHits返回一个包含所有点击的字符串 用逗号隔开 AddHit–向Hits arrayList添加一个命中。每个命中都是 长度在1到50个字符之间且不带l的字符串 阅读 或尾随空白 我不知道该怎么做,我熟悉集合并向列表中添加值,我知道如何设置基本属性 --我已经连续试了几个小时了,请帮忙 public class Musician

我希望能够有一个名为music的类,它有一个名为Hits的规则/属性(这是一个数组列表,有两个名为ListHits()和AddHits(string)的方法)

ListHits返回一个包含所有点击的字符串 用逗号隔开

AddHit–向Hits arrayList添加一个命中。每个命中都是 长度在1到50个字符之间且不带l的字符串 阅读 或尾随空白

我不知道该怎么做,我熟悉集合并向列表中添加值,我知道如何设置基本属性


--我已经连续试了几个小时了,请帮忙

public class Musician : Celebrity
{

    private string _hits;

    public string Hits
    {
        get { return _hits; }
        set
        {

            if (value.Length < 1)
            {
                throw new Exception("need more then 2 characters");
            }
            if (value.Length > 50)
            {
                throw new Exception("needs to be less then 50 characters");
            }

            else
            {

                _hits = value.Trim();

            }

        }
    }

    public Musician()
    {
        //
        // TODO: Add constructor logic here
        //
    }

}
公共级音乐家:名人
{
私人字符串(u hits);;
公共字符串命中率
{
获取{return\u hits;}
设置
{
如果(值.Length<1)
{
抛出新异常(“需要超过2个字符”);
}
如果(value.Length>50)
{
抛出新异常(“需要少于50个字符”);
}
其他的
{
_hits=value.Trim();
}
}
}
公共音乐人()
{
//
//TODO:在此处添加构造函数逻辑
//
}
}

首先,您应该尝试使用
列表,而不是
ArrayList
ArrayList
是在2.0版中添加C之前使用的。
List
允许您保留列表中项目的键入信息,这使您能够更轻松地编写正确的代码

您发布的代码似乎与您要求的详细信息不匹配,但类似的内容应该符合您的要求:

public class Musician
{
    private List<string> _hits;

    public string ListHits()
    {
        return string.Join(", ", _hits);
    }

    public void AddHit(string hit)
    {
        /*
         *  validate the hit
         */
        _hits.Add(hit);
    }
}
公共类音乐家
{
私人名单(点击次数),;
公共字符串ListHits()
{
返回字符串。Join(“,”,_hits);
}
公共无效添加命中(字符串命中)
{
/*
*验证命中率
*/
_点击。添加(点击);
}
}

关键是使用
string.Join
\u hits
列表转换为逗号分隔的字符串。从这里开始,剩下的只是基本的C概念。

向我们展示您拥有的内容,我们可以帮助您在其上构建。
列表
数组列表更合适。。“我已经连续试了几个小时了,请帮帮我!"如果这是真的,请发布一些代码并将问题缩小到一个或两个问题。抱歉,第一次发布--这是一个开始..那么具体问题是什么?好的,Hits是一个属性,它包含一个“艺术家”的点击列表。每个点击是一个长度在1到50个字符之间的字符串,没有前导或t栏杆空白。Hits是一个数组列表,它是私有的,只能通过listHits和addHit方法访问。我强制使用arrayList这很有帮助,但我需要使用arrayListOkay,因此Hits是一个属性,它包含“艺术家”的arrayList点击。每个点击是一个长度在1到50个字符之间的字符串,没有前导或后导尾随空白.Hits是一个数组列表,它是私有的,只能通过listHits和addHit方法来访问,并且必须使用arrayList