foreach循环详细解析流程

来源:互联网 发布:方便面进出口数据 编辑:程序博客网 时间:2024/05/17 23:56

foreach循环

感觉好的请转发,点赞。谢谢
1、foreach循环具有一个很显著的特点就是索引永远不会溢出。
解决了for,while循环中容易溢出导致程序奔溃的作用。
2、foreach语句是c#中新增的循环语句,他对于处理数组及集合等数据类型特别方便。

foreach循环格式:

foreach(自变量 a in 集合b){    操作每一个a}

要点:
1、自变量a是某种类型的变量(int,double,string,char,checkbox,textbox等,控件也属于类型,即引用类型)
2、集合b是一组变量,但必须保证“集合b”和“自变量a”的类型相同
3、a在循环体中可以被调用,但不可以被赋值和改动。

范例示范:
ASP.NET

 <div id="foreach1" runat="server">            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            <asp:CheckBox ID="CheckBox2" runat="server" text="逛街"/>            &nbsp;&nbsp;            <asp:CheckBox ID="CheckBox3" runat="server" text="喝茶"/>            &nbsp;&nbsp;            <asp:CheckBox ID="CheckBox4" runat="server" text="唱歌"/>            &nbsp;&nbsp;&nbsp;            <asp:CheckBox ID="CheckBox5" runat="server" text="购物"/><br />            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            <asp:CheckBox ID="CheckBox6" runat="server" text="看电影"/>            &nbsp;            <asp:CheckBox ID="CheckBox7" runat="server" text="看书"/>            &nbsp;&nbsp;            <asp:CheckBox ID="CheckBox8" runat="server" text="旅游"/>            &nbsp;&nbsp;&nbsp;            <asp:CheckBox ID="CheckBox9" runat="server" text="听音乐"/><br />            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            <asp:CheckBox ID="CheckBox10" runat="server" text="爬山"/>            &nbsp;&nbsp;            <asp:CheckBox ID="CheckBox11" runat="server" text="玩游戏"/>            &nbsp;            <asp:CheckBox ID="CheckBox12" runat="server" text="看综艺节目"/>            <asp:CheckBox ID="CheckBox13" runat="server" text="学ASP.NET"/><br /><br />        </div>
 CheckBox cb;//复选框控件foreach (Control kon in foreach1.Controls)//kon是控件父类        {//control指向所有的控件,所有需要判断我们需要什么控件        //foreach1是HTML中的一个层            if (kon is CheckBox)            {//判断是不是复选框控件                cb = (CheckBox)kon;//强制转换并且赋值                if(cb.Checked)                {                    TextBox2.Text += cb.Text + "\n";                }            }        }

总结实践:foreach编码流程跟for,while稍有区别。
区别:for,while都需要设置索引值,则foreach不用。自动循环到最后一个索引。

感觉不是很难,如果清晰理解很容易掌握。

1 0
原创粉丝点击