【发布时间】:2013-03-26 04:22:46
【问题描述】:
我有一个名为 str 的数组,它由一系列逗号分隔的对组成。例如,str[0] 是“比尔,约翰”。我试图遍历 str 并将逗号处的每一对拆分为名为 First 和 Second 的数组。我很难做到这一点,如果有人可以提供帮助,我将不胜感激。这是我正在使用的代码:
while (a < length)
{
var Pairs = str[a].Split(',');
Console.WriteLine(a + ": " + str[a]);
first[a] = Pairs[0];
second[a] = Pairs[1];
a++;
}
我遇到的问题是第一[a] 和第二[a] 行。我无法弄清楚这些变量应该是什么数据类型,似乎我在 while 循环之前声明它们的每种类型都会出现不同的错误。
以下是我在循环内的变量实现中遇到的错误:
如果我将它们声明为数组:“无法使用 [] 将索引应用于 'System.Array' 类型的表达式”
Array first;
Array second;
while (a < length)
{
var Pairs = str[a].Split(',');
Console.WriteLine(a + ": " + str[a]);
first[a] = Pairs[0];
second[a] = Pairs[1];
a++;
}
as ints: "无法将 [] 索引应用于 'int' 类型的表达式"
int first;
int second;
while (a < length)
{
var Pairs = str[a].Split(',');
Console.WriteLine(a + ": " + str[a]);
first[a] = Pairs[0];
second[a] = Pairs[1];
a++;
}
作为字符串:“不能将属性或索引器'string.this[int]'分配给--它是只读的”
string first;
string second;
while (a < length)
{
var Pairs = str[a].Split(',');
Console.WriteLine(a + ": " + str[a]);
first[a] = Pairs[0];
second[a] = Pairs[1];
a++;
}
as vars: "Implicitly-typed local variables must be initialized" (这个错误在声明中,而不是在循环本身。如果我初始化它,它会隐式转换为上述数据类型之一并抛出错误与我提到的他们相关联)
var first;
var second;
while (a < length)
{
var Pairs = str[a].Split(',');
Console.WriteLine(a + ": " + str[a]);
first[a] = Pairs[0];
second[a] = Pairs[1];
a++;
}
【问题讨论】:
-
你的代码有什么问题?
-
您遇到了什么问题?你有例外吗?输出不正确?很难从文本中确定您想要什么/问题出在哪里。
-
您的代码看起来没有任何问题。它可能会更好,但我希望它会起作用。
-
@Tyriar - 除非不清楚在哪里设置了长度。
-
@Hogan 目前还不清楚
str是不是正确的类型:P