问个关于for each循环的有关问题
发布时间:2011-06-23 16:00:21 文章来源:www.iduyao.cn 采编人员:星星草
问个关于for each循环的问题
由于我是刚开始学习 VB2005 ,并且也没有什么编程基础,我问的问题,可能在高手眼里看来很简单,但是我真的是不会!
我买了本书,叫做“VB2005入门经典”清华大学出版社的
如果大家有这本书的话,可以看一下,是在100页
代码如下:
private sub btn_click(byval e as system.object, byval sender as _ system.args) handles btn.click
for each strname as string in my.computer.filesystem.getdirectories _( "c:\ ")
listbox.items.add(strname)
next
对于以上代码,我有一下几点不明白!
1:在for each ............那行,为什么要用 in 这个词?
2:以下是我对这个循环的理解:
一开始,getdirectories把得到的C盘的第一个文件夹的名字赋予变量strname
然后把strname的值,存储,
接着用listbox.items.add方法把strname的值的值添加到列表中
但是,当运行到NEXT语句时,我不知道是什么回事了,
是NEXT把strname的值转到for each 语句后,还是.......
哎呀,我现在都糊涂了,是什么决定这个循环的中止呢?
3:这个NEXT的作用是什么?
4:谁能给我说一下这个循环的详细流程呢?谢谢大家了!
5: for each next 和 for next 有什么区别?
第一次发帖子,不知道能不能得到答案,哈哈
预祝大家新年快乐,万事如意!
------解决方案--------------------
一般循环:
for i as int16=0 to 10 step 1
next
Each循环:
each = 每一个,单个
in = 范围
next = 下一个
“my.computer.filesystem.getdirectories _( "c:\ ")”这句就是确定范围:C盘下所有目录名称。相等于一般循环中的10
“strname ”就是每次循环的临时载体。相等于一般循环中的i(不停变化)
------解决方案--------------------
穷举循环
string 是一个item
my.computer.filesystem.getdirectories _( "c:\ ")--items
getdirectories把得到的C盘的第一个文件夹的名字
next 处理完一个再来一个
语法的改进,大概是要吸引C/JAVA程序员
循环就在于条件判断,each item in items-当item为null时,则条件为false,跳出循环体
------解决方案--------------------
补充:
一般循环:
for i as int 16=0 to 10 step 1 '/////这里的i数值型变量,to后是一个具体数值或有具体数值的变量,它和C语言中的For循环功能相同
next
而For Each ...Next 用来遍历集合中的每一项
for each strname as string in my.computer.filesystem.getdirectories _( "c:\ ")
/////in后面是个集合,是strname变量类型的集合
listbox.items.add(strname)
next
是什么决定这个循环的中止?;当遍历完集合中的每一项时边便终止,你也可以强制终止这个循环.用Exit For这条语句便可
Each循环:
each = 每一个,单个
in = 范围
next = 下一个
“my.computer.filesystem.getdirectories _( "c:\ ")”这句就是确定范围:C盘下所有目录名称。相等于一般循环中的10
“strname ”就是每次循环的临时载体。相等于一般循环中的i(不停变化)
------解决方案--------------------
这倒是没什么研究的.
词法问题,人性化口语化的语法.
比如,在座的第个人,它是这样的:
For Each 他 As 人 In 在座的所有人
Console.WriteLine(他.姓名)
Next Each
而For i=0 To 10,那是计数的,日常的就是从哪号到哪号.
如在座的人都编了号的,就是
For i As Integer = 0 To 10
Console.WriteLine(人(编号).姓名)
Next i
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
关于VB.net中的验证控件
小弟正在开发一个C/S结构程序,有几个界面有较多的textbox,是关于用户数据输入的,现在想做验证,听说有验证控...
-
多表查询问题
我有三个表,一个表为基本表,一个是代码表,一个是出差表
表一 编号,姓名 ,职别
001 李三 101
...
-
DATAGRIDVIEW无法删除未提交的新行?
再DATAGRIDVIEW录入时,想删除最后自动新增的一行,提示无法删除未提交的新行
Private Sub Dat...
-
迷茫了几天,求各位高手指教一下!下面是我的代码!
<!--#include file="webconfig.asp"-->
<%
Dim SortID
SortID=Trim(FLib.SafeSql(R...
-
vb.net 断开和连接网络连接 修改代码
在vb.net中实现断开和连接网络连接的代码,我在网上找了一段代码
Option Explicit On
'首...
-
DataGridView直接导出EXCEL
如何直接读取DataGridView中的数据,并导出成Excel可以直接读取的文件
记住,我不要通过DataTable。
希...
-
求教:如何在vb.net下做一些好看的界面,整一些好看的效果,改变控件,让控件变得好看点?
有没有点例子?有没有点直接可以做控件的软件?
---...
-
在VB中,对SQL数据库进行增删改语句怎么写呢?
小弟做课程设计,遇到了一点小麻烦,卡在了这里,不知道在VB中怎么写对SQL数据库的增删改...
-
文本框中的数字精确到小数点后两位
请问如何让文本框输入数字后精确到小数点后两位,如:当输入112时,显示为112.00
------解决方案--...
-
VB.NET2008如何利用SendMessage修改按钮的Text?
为了测试 Windows API ,试图点Button用SendMessage修改该按钮的Text,竟然没成功,请教...