c#中的If和for循环逻辑,If错误如何跳过下一步
c#中的If和for循环逻辑,If错误如何跳过下一步,c#,if-statement,for-loop,C#,If Statement,For Loop,我有两个以上的字符串,一个是email,一个是group,如果两者都有效,那么我应该执行push to server()。我比较字符串以确定它是电子邮件还是字符串,这是在for()循环之前完成的 在这个逻辑中,我只想在两个条件都成功时运行SendToPush服务器代码,输入将是电子邮件和组。如果电子邮件正确,并且只有组正确,则应执行发送到推送服务器。如果有人错了,就不应该执行。我只能运行发送到推送服务器,但我不能为电子邮件和组执行一次,这就是为什么我在执行电子邮件和组后都有它。如果在任何一个组或
我有两个以上的字符串,一个是email,一个是group,如果两者都有效,那么我应该执行push to server()。我比较字符串以确定它是电子邮件还是字符串,这是在for()循环之前完成的 在这个逻辑中,我只想在两个条件都成功时运行SendToPush服务器代码,输入将是电子邮件和组。如果电子邮件正确,并且只有组正确,则应执行发送到推送服务器。如果有人错了,就不应该执行。我只能运行发送到推送服务器,但我不能为电子邮件和组执行一次,这就是为什么我在执行电子邮件和组后都有它。如果在任何一个组或电子邮件中有任何错误,那么我不应该执行发送到推送服务器,我必须跳过它。我该怎么做
forloop
{
if ((condition1) && (condition2))
{
//sendtoserver
}
}
这是speudo代码,因为坦率地说,我在这里猜测,我不完全理解你的问题。。。我想就是这样了……你有几个选择:
for()
{
if(!email)
{
Alert();
}
else
{
EnterUserDetailsInTable();
}
if(!group)
{
Alert();
}
else
{
EnterGroupDetailsInTable();
}
if(email && group)
{
PushToServer();
}
}
for(var something in stuff)
{
if(something.condition)
{
// send to server
}
}
反转条件以避免嵌套:
for(var something in stuff)
{
if(!something.condition) continue;
// send to server
}
使用LINQ提前限制结果:
for(var something in stuff.Where(s => s.condition))
{
// send to server
}
我不确定我是否理解正确,但如果您询问如何仅在两个“正确”都已完成的情况下执行最后一部分:添加一个
bool flagEmail = false;
bool flagGroup = false;
在你的代码之前。
在每次“输入…”之后添加:
flag...=true;
最后:
if(flagEmail && flagGroup) ...//Send to push server.
你的链接断了。考虑把代码粘贴为文本。你不能把图像重写为实际的文本吗?@标记我把你的图像传输到一个不同的主机并嵌入它。我有超过2个字符串,一个是电子邮件,一个是组,如果两者都有效,那么我应该执行推到Server()。我比较字符串以确定它是电子邮件还是字符串,这是在for()循环之前完成的。您发布的伪代码看起来足够了。你是在寻找C#语法等价物还是其他什么?我恐怕不太清楚你需要什么样的答案。+1,但我真的不明白。。。您是否使用for if结构只是为了获取两个参数??(这是为OP)@gbianchi-我同意,我只是从原始代码复制了它。我想在for循环完全结束后检查if(flagEmail&&flagGroup)。如果我在If循环内更新邮件,我将无法在for外部访问它loop@Mark不对。这就是为什么我要在你的代码之前声明bool。然后,您将能够在循环外部访问它们。