Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#用户输入二维数组 private void按钮\u添加\u单击(对象发送者,事件参数e) { int data=Convert.ToInt32(data\u textBox.Text); 如果(radioButton_2.Checked==true) { 对于(i=0;i_C#_Multidimensional Array - Fatal编程技术网

c#用户输入二维数组 private void按钮\u添加\u单击(对象发送者,事件参数e) { int data=Convert.ToInt32(data\u textBox.Text); 如果(radioButton_2.Checked==true) { 对于(i=0;i

c#用户输入二维数组 private void按钮\u添加\u单击(对象发送者,事件参数e) { int data=Convert.ToInt32(data\u textBox.Text); 如果(radioButton_2.Checked==true) { 对于(i=0;i,c#,multidimensional-array,C#,Multidimensional Array,我想填充数组,每次输入的值不是相同的值,而是最后输入的值填充所有数组元素的代码 当我单击add按钮时,它只执行数组中最后输入的值。我怎么修理它 最好的方法是让用户在多行文本框中输入所有值,用空格和返回分隔。程序解析文本以创建数组 以下是一些示例代码,可以帮助您开始: private void button_add_Click(object sender, EventArgs e) { int data = Convert.ToInt32(data_textBox.

我想填充数组,每次输入的值不是相同的值,而是最后输入的值填充所有数组元素的代码

当我单击add按钮时,它只执行数组中最后输入的值。我怎么修理它


最好的方法是让用户在多行文本框中输入所有值,用空格和返回分隔。程序解析文本以创建数组

以下是一些示例代码,可以帮助您开始:

    private void button_add_Click(object sender, EventArgs e)
    {
        int data = Convert.ToInt32(data_textBox.Text);

        if (radioButton_2.Checked == true)
        {
            for (i = 0; i < Array2d.GetLength(0); i++)
            {
                for (j = 0; j < Array2d.GetLength(1); j++)
                {
                    Array2d[i,j] = data;
                }
            }
        }
        data_textBox.Clear();
    }
公共部分类表单1:表单
{
int[,]数组2d;
公共表格1()
{
初始化组件();
}
私有无效按钮1\u单击(对象发送者,事件参数e)
{
this.array2d=ParseArray(textBox1.Lines,4,4);
}
公共静态int[,]ParseArray(字符串[]行,int行,int列)
{
//分配空数组
var数组=新整数[行,列];
//对于每行文本

对于(int row=0;row请提供一个示例字符串。您希望在这里修复什么?您是否意识到此代码为数组的每个元素设置了相同的值?如果您没有很好地解释您的目标是什么,那么您的问题就有结束的风险,因为不清楚您在问什么我想填充数组每次输入的值不是same值,但代码只是最后输入的值填充所有数组元素谢谢您的帮助。我在代码中没有错误检查。如果用户输入的数字少于预期,则将失败。此外,对于数学,使用锯齿数组(
int[][
types)而不是2d数组通常更快更容易。
public partial class Form1 : Form
{
    int[,] array2d;

    public Form1()
    {
        InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        this.array2d=ParseArray(textBox1.Lines, 4, 4);
    }
    public static int[,] ParseArray(string[] lines, int rows, int columns)
    {
        // allocate empty array
        var array=new int[rows, columns];
        // for each row of text
        for (int row=0; row<rows; row++)
        {
            // split into values separated by spaces, tabs, commas, or semicolons
            var items=lines[row].Split(',', ' ', ';', '\t');
            // for each value in the row
            for (int col=0; col<columns; col++)
            {
                // parse the string into an integer _safely_
                int x=0;
                int.TryParse(items[col], out x);
                array[row, col]=x;
            }
        }
        return array;
    }
    public static int[,] ParseArray(string text, int rows, int columns)
    {
        // split text into lines
        var lines=text.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
        return ParseArray(lines, rows, columns);
    }
}