`
镭风【CHN】
  • 浏览: 109197 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

C#中有没有Ruby中那种redo和retry的操作?

阅读更多
C#中有没有Ruby中那种redo和retry的循环控制操作?
有的话关键字是什么?
还是只能使用递归重新执行啊?
1
0
分享到:
评论
2 楼 镭风【CHN】 2009-10-23  
RednaxelaFX 写道
没有……不过有goto,所以如果你不介意用goto的话,
using System;

static class Demo {
    static void Main(string[] args) {
    retry:
        for (var i = 0; ; i++) {
        redo:
            Console.WriteLine(i);
            Console.Write("Continue? (y/n/rd/rt) >");
            var opt = Console.ReadLine().ToLower();
            if ("y" == opt) continue;
            else if ("n" == opt) break;
            else if ("rt" == opt) goto retry;
            else if ("rd" == opt) goto redo;
        }
    }
}

这样就行……


谢谢大兄弟指教!
1 楼 RednaxelaFX 2009-10-20  
没有……不过有goto,所以如果你不介意用goto的话,
using System;

static class Demo {
    static void Main(string[] args) {
    retry:
        for (var i = 0; ; i++) {
        redo:
            Console.WriteLine(i);
            Console.Write("Continue? (y/n/rd/rt) >");
            var opt = Console.ReadLine().ToLower();
            if ("y" == opt) continue;
            else if ("n" == opt) break;
            else if ("rt" == opt) goto retry;
            else if ("rd" == opt) goto redo;
        }
    }
}

这样就行……

相关推荐

Global site tag (gtag.js) - Google Analytics