索引必须在列表的范围内 - 窗体表单app

时间:2017-10-11 08:07:50

标签: c# arrays exception textbox int

我试图从两个文本框中获取输入,以创建两个要整合的字符串。我一直得到一个错误,基本上只是说"索引必须在列表的范围内" 这是我的代码

private char[] array1;
private char[] array2;

String input1 = tbUserInput1.Text;
        array1 = input1.ToCharArray();
        int[] op1 = new int[array1.Length];
        for (int i = 0; i < array1.Length; i++)
        {
            op1[i] = Convert.ToInt32(array1[i].ToString());
        }

        String input2 = tbUserInput1.Text;
        array2 = input2.ToCharArray();
        int[] op2 = new int[array2.Length];
        for (int i = 0; i < array2.Length; i++)
        {
            op2[i] = Convert.ToInt32(array2[i].ToString());
        }

        MessageBox.Show(Binary.AddBinary(op1, op2).ToString());

我已经解决了这个问题,它最后成为了我的Binary类引发的异常。不过我还有一个问题。当我显示我的结果时,它们都在新线上。很明显,从我的代码中你可以看到它每次都会创建一个新的行,但是还有另一种方法可以做到这一点,所以它在一行上有空格吗?继承人我的新代码是如何为输出设置的

string toDisplay = string.Join(Environment.NewLine, Binary.AddBinary(op1, op2));
MessageBox.Show(toDisplay);

1 个答案:

答案 0 :(得分:0)

我解决了我的问题。这是一个非常简单的修复,我只需要改变

string toDisplay = string.Join(Environment.NewLine, Binary.AddBinary(op1, op2));

string toDisplay = string.Join(" ", Binary.AddBinary(op1, op2));

谢谢大家的建议!