foreach循环输出数组的问题
时间:2011-12-12
来源:互联网
static void Main(string[] args)
{
string[] strings = { "a","b","c"};
foreach(string info in strings)
{
Console.WriteLine(strings[1]);
}
Console.Read();
}
这些代码输出的结果大家都知道是abc
我知道,我的代码有点问题,输出的变量名称不是info,而是strings,因为我如果在输出那里写info[0]这样的是不行的,我也不太懂,但不是重点。重点是以上面的代码输出的结果是3个值。
strings[0]则是 :
a
a
a
strings[1]则是 :
b
b
b
strings[3]则是 :
c
c
c
----------------------------------------------
但是,我把foreach去掉:
static void Main(string[] args)
{
string[] strings = { "a","b","c"};
Console.WriteLine(strings[0]);
Console.Read();
}
输出来的值则是1个,不再是3个。
我菜鸟不懂,请各位给个解释 ..
{
string[] strings = { "a","b","c"};
foreach(string info in strings)
{
Console.WriteLine(strings[1]);
}
Console.Read();
}
这些代码输出的结果大家都知道是abc
我知道,我的代码有点问题,输出的变量名称不是info,而是strings,因为我如果在输出那里写info[0]这样的是不行的,我也不太懂,但不是重点。重点是以上面的代码输出的结果是3个值。
strings[0]则是 :
a
a
a
strings[1]则是 :
b
b
b
strings[3]则是 :
c
c
c
----------------------------------------------
但是,我把foreach去掉:
static void Main(string[] args)
{
string[] strings = { "a","b","c"};
Console.WriteLine(strings[0]);
Console.Read();
}
输出来的值则是1个,不再是3个。
我菜鸟不懂,请各位给个解释 ..
作者: Nopzhack 发布时间: 2011-12-12
strings[1]表示string数组的第二个string
info[0]表示info字符串的第一个字符
foreach就是遍历,你遍历而不用到遍历变量info是没有意义的
info[0]表示info字符串的第一个字符
foreach就是遍历,你遍历而不用到遍历变量info是没有意义的
作者: Icedmilk 发布时间: 2011-12-12
引用 1 楼 icedmilk 的回复:
strings[1]表示string数组的第二个string
info[0]表示info字符串的第一个字符
foreach就是遍历,你遍历而不用到遍历变量info是没有意义的
strings[1]表示string数组的第二个string
info[0]表示info字符串的第一个字符
foreach就是遍历,你遍历而不用到遍历变量info是没有意义的
如果我使用了遍历的变量的话。如:
foreach(string info in strings)
{
Console.WriteLine(into[0]);
}
这样的话。则是报错的
作者: Nopzhack 发布时间: 2011-12-12
我很无语,
static void Main(string[] args)
{
string[] strings = { "a","b","c"};
foreach(string info in strings)
{
Console.WriteLine(info)
}
Console.Read();
}
本来info就是你定义的一个字符串变量,在strings数组里面循环表示里面的一个选项,直接输出info就好,你这样写Console.WriteLine(strings[1]);
的话完全不干循环什么事情,等于你每次strings[1]输出第2字符,就是b,不循环都跟Console.WriteLine(strings[1]);
没有任何关联
static void Main(string[] args)
{
string[] strings = { "a","b","c"};
foreach(string info in strings)
{
Console.WriteLine(info)
}
Console.Read();
}
本来info就是你定义的一个字符串变量,在strings数组里面循环表示里面的一个选项,直接输出info就好,你这样写Console.WriteLine(strings[1]);
的话完全不干循环什么事情,等于你每次strings[1]输出第2字符,就是b,不循环都跟Console.WriteLine(strings[1]);
没有任何关联
作者: wzhwzhh6 发布时间: 2011-12-12
C# code
你要令输出为a、b、c,那么你的代码必须改为:
C# code
你上面的代码是:Console.WriteLine(strings[1]);
strings[1]是代表,在数组strings内索引为1的值,即b,所以你总是输出b
static void Main(string[] args) { string[] strings = { "a","b","c"}; foreach(string info in strings) { Console.WriteLine(strings[1]); } Console.Read(); }
你要令输出为a、b、c,那么你的代码必须改为:
C# code
foreach(string info in strings) { Console.WriteLine(info); } 或者 for(int index=0;index<strings.Length;index++) { Console.WriteLine(strings[index]); }
你上面的代码是:Console.WriteLine(strings[1]);
strings[1]是代表,在数组strings内索引为1的值,即b,所以你总是输出b
作者: zsw19909001 发布时间: 2011-12-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28