C# 可以在foreach循环中生成新字符串吗?

C# 可以在foreach循环中生成新字符串吗?,c#,C#,现在有没有办法用字符串的“预设”名称来实际创建一个新字符串?希望我足够清楚,让你明白我想做什么,但这很难解释 不要增加int变量x 迭代foreach循环时,string2数组中的项将跳转到数组中的下一个值 int x = 0; string1 = "Hi,Bye"; string[] string2 = string1.Split(","); foreach (string item in string2) { string x = item; x++; } 如果您使用的是fo

现在有没有办法用字符串的“预设”名称来实际创建一个新字符串?希望我足够清楚,让你明白我想做什么,但这很难解释

不要增加
int
变量x

迭代foreach循环时,
string2
数组中的
项将跳转到数组中的下一个值

int x = 0;
string1 = "Hi,Bye";
string[] string2 = string1.Split(",");

foreach (string item in string2)
{
   string x = item;
   x++;
}
如果您使用的是for循环,那么代码将如下所示(这可能会导致混淆):


我不能完全理解你的问题。但是您是否尝试使用
列表

string s=“test1,test2/test3,test4”;
字符串[]子字符串1=s.Split('/');
List subStrings2=新列表();
foreach(子字符串1中的字符串项)
{
字符串[]tempArray=item.Split(',');
子字符串2.Add(tempArray);
}

您想要的输出是什么?恐怕一点也不清楚。该示例也不会编译,因为对于变量
x
,您有两个声明。你到底想达到什么目的?
将字符串放入新字符串中
?每一个都是同一条线?在
string2
数组中,它们已经作为两个单独的字符串存在。不确定要在此处执行什么操作。无法使用运行时生成的名称创建变量。这就是数组-它已收集可索引结构中的所有字符串。您不能创建动态变量名——几乎可以用任何语言创建。
string1 = "Hi,Bye";
string[] string2 = string1.Split(",");

foreach (string item in string2)
{
   Console.Write(item);
}
string[] string2 = string1.Split(",");

for(int x = 0; x < string2.Length; x++)
{
   Console.Write(string2[x]);
}
string s =  "test1,test2/test3,test4";
string[] arr = s.Split('/');
string stringTestOneAndTwo = arr[0];
string stringTestThreeAndFour = arr[1];
string[] subArr1 = arr[0].Split(',');
string[] subArr2 = arr[1].Split(',');
string s = "test1,test2/test3,test4";
string[] subStrings1 = s.Split('/');
List<string[]> subStrings2 = new List<string[]>();
foreach (string item in subStrings1)
{
    string[] tempArray = item.Split(',');
    subStrings2.Add(tempArray);
}