要弄清楚这两个问题,就要明白For循环语句的语法规则:
创新互联基于分布式IDC数据中心构建的平台为众多户提供四川雅安电信机房 四川大带宽租用 成都机柜租用 成都服务器租用。
For循环语句,首先是判断循环条件,如果循环条件不合理,则循环不执行。
那么看第一个语句,循环范围是 i = -3.5 to 5.5,显然这个是一个从-3.5到5.5的递增范围,可是后面的Step却是一个负数,表示以0.5的步长递减。取值范围要求从小到大,可是步长改变却是由大变小,显然这个循环条件自相矛盾,所以循环将不会执行,也就是循环执行的次数是0次!
如果循环条件合理,则开始执行循环语句,直到根据步长变换,下一个值超出循环范围则终止。
For j = 6 to 2 Step -2
Next
完整写法就是:
For j = 6 to 2 Step -2
Next j
Next j的意思就是下一个j值。结合本题,下一个j值等于6-2=4,这个时候,就是循环语句的第二个规则,判断循环变量的值是否超出循环范围,我们这里的j=4,显然是在6 to 2这个范围之内,所以循环继续,到下一个j的时候为2,依然在循环范围内;到这里,6,4,2我们的循环执行了3次,准备第4次循环的时候j = 2 -2 = 0超过了6 to 2这个范围,那么循环终止。
所以i循环内的每一个j循环将执行3次。
一般多开线程写无限循环行为。
//定义线程
Dim th As New Threading.Thread(New Threading.ParameterizedThreadStart(AddressOf test))
th.Start("aaa")//开始线程,可以传参
//线程执行函数
Public Sub test(ob As Object)
While True
Console.WriteLine("线程正在运行中" ob)
Threading.Thread.Sleep(1000)
End While
End Sub
我写了一段代码,注意你读取的方法,我改进了一下 Imports System.IO ‘代码窗体的最上端一定要声明
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim sr As StreamReader Dim TextBox As Control
Dim i As Integer
i = 1
For Each TextBox In Me.Controls
If TypeName(TextBox) = "TextBox" Then sr = New StreamReader("c:\save\" i ".ini", System.Text.Encoding.Default) ’注意选择编码方式,按你原来的方法,未设置编码,显示的是乱码!路径请按你的情况改! TextBox.Text = sr.ReadToEnd()
i += 1 End If
Next
MsgBox("已经载入" i - 1 "个文件") End Sub注意:这样的代码是倒序的,第一个文本框显示的是最后一个文件的内容!请酌情处理!
你先新建一个控制台应用程序,然后全部复制就行了,用 Ctrl + F5 调试
Module Module1
Sub Main()
Dim temp As String = "*"
Dim i, j As Short
For i = 1 To 5 Step +2
For j = 1 To i
Console.Write("{0} ", temp)
Next j
Console.WriteLine("")
Next i
Console.ReadLine()
End Sub
End Module
其实你这样不就好了
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim a As String = "*" vbCrLf "* * *" vbCrLf "* * * * *"
MessageBox.Show(a)
End Sub
多方便