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