黑马程序员技术交流社区

标题: 求解疑,可以定义为关于数组 [打印本页]

作者: sym544135698    时间: 2013-6-29 21:25
标题: 求解疑,可以定义为关于数组
本帖最后由 sym544135698 于 2013-6-29 21:42 编辑
  1. string[] name = new string[] { "梅西", "卡卡", "郑大世" };
  2.             string str = "";
  3.             for (int i = 0; i < name.Length; i++)
  4.             {
  5.                 if (i == name.Length - 1)
  6.                 {
  7.                     str = str + name[i];
  8.                 }
  9.                 else
  10.                 {
  11.                     str = str + name[i] + "|";
  12.                 }
  13.             }
  14.             Console.WriteLine(str);
复制代码
这段代码在for循环的if{}里面,为什么这样写输出梅西|卡卡|郑大世,会有"|",表示有些不明白,else{}的话知道,求解
作者: sym544135698    时间: 2013-6-29 21:41
哦,原来我把if与else看的完全分离了,这里要当作一个整体来看,是在一个整体的大循环中,不是最后一个的话就要加上“|”,是最后一个的话就不要继续加。汗,感情之前都没有完全看懂,只是看分叉了。
作者: 崔松鹤    时间: 2013-6-29 22:14
本帖最后由 崔松鹤 于 2013-6-29 22:16 编辑

string[] name = new string[] { "梅西", "卡卡", "郑大世" };
            string str = "";
            for (int i = 0; i < name.Length; i++)
            {
                if (i == name.Length - 1)   //如果i 等于数组长度-1,也就是i=2,才执行下面的语句
                {
                    str = str + name;   //当i=2时,str="梅西|卡卡|";这时在后面再加个name[2],郑大世
                }
                else
                {
                    str = str + name + "|";
                }
            }
            Console.WriteLine(str);





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2