C#一个List或Array集合里是否有相同数据

请问哪位老师懂得C#中如何判断一个集合中例如:ArrayListarraylist=newArrayList();或List<String>list=newList<St... 请问哪位老师懂得C# 中如何判断 一个集合中例如:
ArrayList arraylist = new ArrayList ();

List<String> list=new List<String>();
-----------------------------------------------------------
上面随意一个数组中的“数据”是否有相同的
例:
List<String> list=new List<String>();
list.add("a"); //1
list.add("b"); //2
list.add("c"); //3
list.add("a"); //4

请问怎么用循环判断出list集合中 1和4 相同呢?,求会的老师教教,感谢
展开
 我来答
百度网友cfe4d0f
2014-05-20 · TA获得超过1502个赞
知道小有建树答主
回答量:937
采纳率:100%
帮助的人:858万
展开全部

如果只是判断重复的话 用双重for循环即可

for(int i=0;i<lst.Count;i++) {
  for(int j=i+1;j<lst.Count;j++) {
    if (lst[i]==lst[j]) { //那么就是有重复了... }
  }
}
kcxnvbdbd
2014-05-20 · TA获得超过523个赞
知道小有建树答主
回答量:885
采纳率:50%
帮助的人:611万
展开全部
        private void button9_Click(object sender, EventArgs e)
        {
            ArrayList list = new ArrayList();
            list.Add("a");
            list.Add("b");
            list.Add("c");
            list.Add("a");
            if (list.ToArray().Cast<string>().Distinct<string>().Count() < list.Count)
            {
                MessageBox.Show("ArrayList中有相同");
            }

            List<string> list2 = new List<string>();
            list2.Add("a");
            list2.Add("b");
            list2.Add("c");
            list2.Add("a");
            if (list2.Distinct<string>().Count() < list2.Count())
            {
                MessageBox.Show(" List<string>中有相同");
            }
        }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
abcd1236386
推荐于2016-08-11 · TA获得超过774个赞
知道小有建树答主
回答量:539
采纳率:0%
帮助的人:524万
展开全部
简单一点,双重循环呀。
复杂一点,哈希表
for(int i=0;i<list.count;i++)
{
for(int j=i+1;j<list.count;j++)
{ if(list[i]==list[j])
//有重复的
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
战地密报
2014-05-20 · TA获得超过211个赞
知道小有建树答主
回答量:424
采纳率:0%
帮助的人:158万
展开全部
List<String> list = new List<String>();
list.Add("a"); //1
list.Add("b"); //2
list.Add("c"); //3
list.Add("a"); //4
string ee = string.Empty;
int ncount = 0;
string a = string.Empty;
string a2 = string.Empty;
for(int j=0;j<list.Count;j++)
{
a = list[ncount];
a2 = string.Empty;
for (int i = 0; i < list.Count; i++)
{
a2 = list[i];
if (i!=0&&a2 == a)
{
ee=ee+ ",第"+i+"个数据和"+ncount+"个数据是一样的";
}
}
ncount = ncount + 1;
a = list[ncount];
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-05-20
展开全部
List<String> list=new List<String>();
list.add("a"); //1
list.add("b"); //2
list.add("c"); //3
list.add("a"); //4

int index=0;
int count = 0;

while( (index=list.indexOf("a", index)) != -1 )

count++;

// "a"的数量为count个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式