例如:现在不确定这个数组的行数,只知道有10列,我想实现用一个textbox每次添加一行的10个数据,添加几次就有几个行,这要怎么实现?尤其是行数不确定,该怎么声明呢?
string input = textBox1.Text.ToString();//获取textbox中的字符串
string[] sArray = input_hand.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries);//按空格分隔截取单个字符存到一个一维数组中
现在怎么实现到二维数组的存放呢?
6 个解决方案
#1
这样的需求,最好别用二维数组,你用List<string[]>或DataTable比较好
List<string[]> lst = new List<string[]>();
string input = textBox1.Text.ToString();//获取textbox中的字符串
string[] sArray = input_hand.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries);//按空格分隔截取单个字符存到一个一维数组中
lst.Add(sArray);
#2
木有用过这个,用这个有多个不规则遍历的时候方便么?
#3
也适合的,一个行代表一个 list 元素,而每一个列的值就是 string[] 中得元素
#4
List怎么不规则都可以遍历
//遍历代码
foreach(string []sArray in lst)
{
//每个一维数组
}
#5
比如说第三行的值为1 2 3 4 5 6 7 8 9 0
要怎么样才能第三行第3列的值呢?
#6
//遍历代码
for(int i=0;i<lst.Count;i++)
{
if(i==2) //第三行
{
string s=lst[i][2]; //第三行第三列的值
MessageBox.Show("第三行第三列的值为:" + s);
}
}
如果你知道要取具体某行某列的值,甚至都不用遍历,直接就能从List里取
MessageBox.Show("第三行第三列的值为:" + lst[2][2]);
for(int i=0;i<lst.Count;i++)
{
if(i==2) //第三行
{
string s=lst[i][2]; //第三行第三列的值
MessageBox.Show("第三行第三列的值为:" + s);
}
}
如果你知道要取具体某行某列的值,甚至都不用遍历,直接就能从List里取
MessageBox.Show("第三行第三列的值为:" + lst[2][2]);
#1
这样的需求,最好别用二维数组,你用List<string[]>或DataTable比较好
List<string[]> lst = new List<string[]>();
string input = textBox1.Text.ToString();//获取textbox中的字符串
string[] sArray = input_hand.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries);//按空格分隔截取单个字符存到一个一维数组中
lst.Add(sArray);
#2
木有用过这个,用这个有多个不规则遍历的时候方便么?
#3
也适合的,一个行代表一个 list 元素,而每一个列的值就是 string[] 中得元素
#4
List怎么不规则都可以遍历
//遍历代码
foreach(string []sArray in lst)
{
//每个一维数组
}
#5
比如说第三行的值为1 2 3 4 5 6 7 8 9 0
要怎么样才能第三行第3列的值呢?
#6
//遍历代码
for(int i=0;i<lst.Count;i++)
{
if(i==2) //第三行
{
string s=lst[i][2]; //第三行第三列的值
MessageBox.Show("第三行第三列的值为:" + s);
}
}
如果你知道要取具体某行某列的值,甚至都不用遍历,直接就能从List里取
MessageBox.Show("第三行第三列的值为:" + lst[2][2]);
for(int i=0;i<lst.Count;i++)
{
if(i==2) //第三行
{
string s=lst[i][2]; //第三行第三列的值
MessageBox.Show("第三行第三列的值为:" + s);
}
}
如果你知道要取具体某行某列的值,甚至都不用遍历,直接就能从List里取
MessageBox.Show("第三行第三列的值为:" + lst[2][2]);