c# foreach可以将里面的两个值进行比较吗

foreach(stringrinc){stringname=r.name;}我想比较里面的两个name是不是相同,应该怎么比较呢?... foreach (string r in c)
{
string name=r.name;
}
我想比较里面的两个name是不是相同,应该怎么比较呢?
展开
 我来答
12lei23
2012-12-07 · 超过35用户采纳过TA的回答
知道答主
回答量:116
采纳率:0%
帮助的人:108万
展开全部
你的这句代码是赋值操作,并不是比较。。

如果是想比较两个值是否相等的话,很简单,直接:
if(r.name==name)
// TODO:
else
// TODO:
因为string比较特殊,虽然是引用类型,重载了基类的==运算符的比较,因此这里比较的是值,如果想比较引用是否相等的话,object.ReferenceEquals(r.name,name);即可。
cc486255
2012-12-07 · 知道合伙人软件行家
cc486255
知道合伙人软件行家
采纳数:697 获赞数:1968
3年.NET开发经验

向TA提问 私信TA
展开全部
string name=r.name;这是赋值。比较应该用if判断撒,首先name必须有值,你在循环里面定义变量name=r.name没实际意义。你把string name定义在foreach外面,然后在循环里面判断name是否等于r.name if(name==r.name){如果值相同进行下一步}
更多追问追答
追问
string name=r.name;这句可以当它不存在的。我想在显示数据的时候,将数据中如果name这个字段的值相同,就换成其他的值显示
追答
你是想判断c里面有没有重复的name吧?
给你将下思路:
首先将c里面的第一个name取出来和c里面的所有的name进行比较
然后取c里面的第二个name和c里面的所有的name进行比较
依次类推,直到最后一name比较完毕
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2cc3c16
2012-12-07 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:198
采纳率:0%
帮助的人:106万
展开全部
总体思路是要再创建一个新的cc,循环c的值放入cc里。
每次用c的值去比较cc的值,如果没有放入,如果有就替换放入。
然后得到的CC就ok了。

最好你还是把c是什么东西能告诉我们。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
两个二娃
2012-12-07 · 超过14用户采纳过TA的回答
知道答主
回答量:291
采纳率:100%
帮助的人:52.2万
展开全部
你在里面定义一个string name干嘛 这样 你这个值就会是空 比较都是用if撒
更多追问追答
追问
string name=r.name;这句可以当它不存在的。我想在显示表中数据的时候,将数据中如果name这个字段的值相同,就换成其他的值显示
追答
用if判断就是了撒
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千门公子_云襄
2012-12-07 · 超过28用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:73.3万
展开全部
foreach(string r in c)
{
foreach(string s in c)
{
if(r==c)
{
..............
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式