C# 表达式来分隔for循环的最后一次迭代

C# 表达式来分隔for循环的最后一次迭代,c#,expression,C#,Expression,是否有其他方法可以实现以下结果?(不使用if) static void Main(字符串[]args) { int n=16; Action[]Action=新操作[2]{go0,go1}; 对于(int i=1;i

是否有其他方法可以实现以下结果?(不使用if)

static void Main(字符串[]args)
{
int n=16;
Action[]Action=新操作[2]{go0,go1};
对于(int i=1;i
编辑:

好的,我会尽量说得更具体一些。我真正的问题与图形有关

我尝试渲染一个由白色矩形和它们之间的线分隔符组成的网格。因此,当我进入循环绘制每个矩形时,我还使用另一种颜色绘制每个矩形的右侧,以使分隔符清晰

但是当我看到最后一个矩形时,我不想画它的右边。为了克服这个问题,我发现这种方法可能有效,假设第一个方法画分隔符,第二个方法什么也不画

(我不是程序员,所以在谈论编程时很难准确地表达自己)

基本上我想跳过循环的最后一个元素

for(int i=1;i
这是一个真正的问题还是一个真正的问题?请使用
,如果
。我不想支持这样的代码,即使是在地狱里,如果你重复了太多的代码,你就不能调整你的循环条件吗?Like
i=1;i
    static void Main(string[] args)
    {
        int n = 16;
        Action[] action = new Action[2] { go0, go1 };
        for (int i = 1; i < n + 1; i++)
        {
            Console.Write(i - 1);
            action[((i % (n)) % (i + 1)) / i]();
            //Console.Write(((i % (n)) % (i + 1)) / i);
        }
        Console.ReadLine();
    }

    static void go0() { Console.Write("-"); }
    static void go1() { Console.Write("|"); }
for (int i = 1; i < n; i++)
// ...