C# 对于每个匿名函数,can';不归
我无法从ForEach返回,以下是我的代码:C# 对于每个匿名函数,can';不归,c#,.net,linq,C#,.net,Linq,我无法从ForEach返回,以下是我的代码: cards.ForEach(delegate(Card c){ if (c.GetFaceValue().ToString() == card) { return "Your Card has been located"; } 错误: 无法将匿名方法转换为委托类型“。因为块中的某些返回类型不能隐式转换为委托返回类型 以下操作也不起作用,因为CheckCard只能返回作废: cards.ForEach(CheckCa
cards.ForEach(delegate(Card c){
if (c.GetFaceValue().ToString() == card) {
return "Your Card has been located";
}
错误:
无法将匿名方法转换为委托类型“。因为块中的某些返回类型不能隐式转换为委托返回类型
以下操作也不起作用,因为CheckCard
只能返回作废:
cards.ForEach(CheckCard);
public string CheckCard(Card c) {
if (c.GetFaceValue().ToString() == card) { // card = global
return "Your Card has been located";
}
}
错误:
“字符串SharedGamesClasses.Hand.CheckCard(SharedGamesClasses.Card)”的返回类型错误
ForEach有一个空值-不能返回值 操作是的代理快捷方式
public delegate void Action<in T>(
T obj
)
公共委托无效操作(
T obj
)
注意这里的空白
public void ForEach(
行动
)
ForEach有一个空值-您不能返回值
操作是的代理快捷方式
public delegate void Action<in T>(
T obj
)
公共委托无效操作(
T obj
)
注意这里的空白
public void ForEach(
行动
)
您当前正在尝试从匿名函数返回消息,而不是您的调用代码;这将不起作用,因为匿名函数是一个操作
,它不能返回任何内容
是否只想查看卡中的任何元素是否与卡匹配,如果匹配,则返回消息
使用而不是.ForEach()
:
您当前正在尝试从匿名函数返回消息,而不是您的调用代码;这将不起作用,因为匿名函数是一个操作
,它不能返回任何内容
是否只想查看卡中的任何元素是否与卡匹配,如果匹配,则返回消息
使用而不是.ForEach()
:
根据提供的逻辑,我想您只需要终止迭代,因为找到了Card
。为此,只需使用一个简单的foreach
,例如:
string SomeFunc(IEnumerable<Card> cards)
{
foreach(Card in cards)
{
if(c.GetFaceValue().ToString() == card) {
return "Your Card has been located";
}
}
string SomeFunc(IEnumerable卡)
{
foreach(卡片中的卡片)
{
如果(c.GetFaceValue().ToString()==卡){
返回“您的卡已找到”;
}
}
查看提供的逻辑,我想您只需终止迭代,因为找到了卡。为此,只需使用一个简单的foreach
,例如:
string SomeFunc(IEnumerable<Card> cards)
{
foreach(Card in cards)
{
if(c.GetFaceValue().ToString() == card) {
return "Your Card has been located";
}
}
string SomeFunc(IEnumerable卡)
{
foreach(卡片中的卡片)
{
如果(c.GetFaceValue().ToString()==卡){
返回“您的卡已找到”;
}
}
我想他需要的是所有,而不是任何谢谢!我是c#的新手,你能告诉我“c=>c.GetFaceValue().ToString()==card”是什么意思吗?或者这个概念叫什么,我可以查一下。哦,这是一种匿名委托的快捷语法。它与委托(card c){返回c.GetFaceValue().ToString()相同==card;}
。我想他需要的是所有,而不是任何谢谢!我是c#的新手,你能告诉我'c=>c.GetFaceValue().ToString()==card'是什么意思吗?或者这个概念叫什么,我可以查一下。哦,这是一种匿名委托的快捷语法。它与delegate(card c){return c.GetFaceValue().ToString()==card;}
。若要对某个对象执行foreach,您希望委托返回实现IEnumerable的对象。请考虑类似List.FindAll的对象。若要对某个对象执行foreach,您希望委托返回实现IEnumerable的对象。请考虑类似List.FindAll的对象。