要弄清楚這兩個問題,就要明白For循環(huán)語句的語法規(guī)則:

創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的達(dá)拉特網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
For循環(huán)語句,首先是判斷循環(huán)條件,如果循環(huán)條件不合理,則循環(huán)不執(zhí)行。
那么看第一個語句,循環(huán)范圍是 i = -3.5 to 5.5,顯然這個是一個從-3.5到5.5的遞增范圍,可是后面的Step卻是一個負(fù)數(shù),表示以0.5的步長遞減。取值范圍要求從小到大,可是步長改變卻是由大變小,顯然這個循環(huán)條件自相矛盾,所以循環(huán)將不會執(zhí)行,也就是循環(huán)執(zhí)行的次數(shù)是0次!
如果循環(huán)條件合理,則開始執(zhí)行循環(huán)語句,直到根據(jù)步長變換,下一個值超出循環(huán)范圍則終止。
For j = 6 to 2 Step -2
Next
完整寫法就是:
For j = 6 to 2 Step -2
Next j
Next j的意思就是下一個j值。結(jié)合本題,下一個j值等于6-2=4,這個時(shí)候,就是循環(huán)語句的第二個規(guī)則,判斷循環(huán)變量的值是否超出循環(huán)范圍,我們這里的j=4,顯然是在6 to 2這個范圍之內(nèi),所以循環(huán)繼續(xù),到下一個j的時(shí)候?yàn)?,依然在循環(huán)范圍內(nèi);到這里,6,4,2我們的循環(huán)執(zhí)行了3次,準(zhǔn)備第4次循環(huán)的時(shí)候j = 2 -2 = 0超過了6 to 2這個范圍,那么循環(huán)終止。
所以i循環(huán)內(nèi)的每一個j循環(huán)將執(zhí)行3次。
DT.Rows.ToString未必是指結(jié)果集中的所有數(shù)據(jù),也許只是一行中所有的,或是一列中所有的
保險(xiǎn)起見,可以一格格枚舉
dim a as boolean=true
Dim row As DataRow
For Each row In DT.Rows
Dim column As DataColumn
For Each column In DT.Columns
if row(column).contains("Agree") then a=false
Next column
Next row
if a then
Me.rblAgReject.Items(0).Enabled = False
else
Me.rblAgReject.Items(0).Enabled = True
end if
VB.NET 2005,已經(jīng)實(shí)現(xiàn)了continue語法,具體是這樣操作:
如果 Continue 語句在 Do...Loop 循環(huán)中,請將該語句更改為 Continue Do。
如果 Continue 語句在 For...Next 循環(huán)中,請將該語句更改為 Continue For。
如果 Continue 語句在 While...End While 循環(huán)中,請將該語句更改為 Continue While。
否則,請移除 Continue 語句。
用法:
For i As Integer = 0 To 100
' If i = 50 跳過 Console.Writeline statement
If i = 50 Then Continue For
Console.WriteLine(i.ToString)
Next
' Do While using Continue statement.
Dim ii As Integer = 1
Do While ii 100
ii += 1
' If ii = 50 跳過 Console.Writeline statement
If ii = 50 Then Continue Do
Console.WriteLine(ii.ToString)
Loop
' While using Continue statement.
Dim iii As Integer = 1
While iii 100
iii += 1
' If iii = 50 跳過 Console.Writeline statement
If iii = 50 Then Continue While
Console.WriteLine(iii.ToString)
End While
Dim Cnn As New Data.OleDb.OleDbConnection
Dim DbAdapter As New Data.OleDb.OleDbDataAdapter
Dim Cmd As New Data.OleDb.OleDbCommand
Dim dsAll As New Data.DataSet
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\webapp\test\web.mdb"
Cmd.Connection = Cnn
End Sub
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
'插入
Cmd.CommandText = "insert into main (about) values ('" + TextBox1.Text + "')"
UpdateTable()
End Sub
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
'修改
Dim ids As Integer
ids = 1
Cmd.CommandText = "update main set about='" + TextBox1.Text + "' where id=" + ids.ToString()
UpdateTable()
End Sub
Protected Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click
'刪除
Dim ids As Integer
ids = 1
Cmd.CommandText = "delete from main where id=" + ids.ToString()
UpdateTable()
End Sub
Public Sub UpdateTable()
Dim Trans As Data.OleDb.OleDbTransaction
Try
Cnn.Open()
Trans = Cnn.BeginTransaction()
Try
Cmd.Transaction = Trans
Cmd.ExecuteNonQuery()
Trans.Commit()
Catch
Trans.Rollback()
Finally
If (Cnn.State = System.Data.ConnectionState.Open) Then
Cnn.Close()
End If
End Try
Catch
'error message
End Try
End Sub
Protected Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button4.Click
'顯示
Cmd.CommandText = "select id, about from main"
DbAdapter.SelectCommand = Cmd
DbAdapter.Fill(dsAll, "table1")
If (dsAll.Tables("table1").Rows.Count 0) Then
TextBox1.Text = dsAll.Tables("table1").Rows(0)("about")
Else
TextBox1.Text = ""
End If
End Sub
(一)類型轉(zhuǎn)換類函數(shù)
1. CType(X)
[格式]:
P=CBool(X)
' 將X轉(zhuǎn)換為"布爾"(Boolean)類型
P=CByte(X)
' 將X轉(zhuǎn)換為"字節(jié)"(Byte)類型
P=CCur(X)
' 將X轉(zhuǎn)換為"金額"(Currency)類型
P=CDate(X)
' 將X轉(zhuǎn)換為"日期"(Date)類型
P=CDbl(X)
' 將X轉(zhuǎn)換為"雙精度"(Double)類型
P=CInt(X)
' 將X轉(zhuǎn)換為"整型"(Integer)類型
P=CLng(X)
' 將X轉(zhuǎn)換為"長整型"(Long)類型
P=CSng(X)
' 將X轉(zhuǎn)換為"單精度"(Single)類型
P=CStr(X)
' 將X轉(zhuǎn)換為"字符串"(String)類型
P=Cvar(X)
' 將X轉(zhuǎn)換為"變體型"(Variant)類型
P=CVErr(X)
' 將X轉(zhuǎn)換為Error值
[ 范例 ]:
(1). CStr(13)+CStr(23)
' 數(shù)值轉(zhuǎn)換成字符串后,用"+"號連接, 結(jié)果:1323
(2). CInt("12")+12
' 字符串轉(zhuǎn)換成整型后與12相加, 結(jié)果:24
(3). P=CInt(True)
' 輸出結(jié)果為-1
' 布爾值與數(shù)值的轉(zhuǎn)換時(shí)要注意,布爾值只有True和False,其中True在內(nèi)存中為-1,False存為0
(4). CBool(-0.001)
' 輸出結(jié)果為True
' 將數(shù)值轉(zhuǎn)換為布爾型時(shí),等于0的數(shù)值將得到False,不等于0的數(shù)值得到True.
2. Int(X),Fix(X):取X的整數(shù)值
[格式]:
P=Int(X) ' 取=X的最大整數(shù)值
P=Fix(X) ' 取X的整數(shù)部分,直接去掉小數(shù)
[范例]:
(1) Int(-54.6)
' 結(jié)果為-55,取=-54.6的最大整數(shù)
(2) Fix(54.6)
' 結(jié)果為54,取整數(shù)并直接去掉小數(shù)
(二)常用數(shù)學(xué)函數(shù)
[格式]:
1. Abs(N) 取絕對值
例:Abs(-3.5) 結(jié)果:3.5
2. Cos(N) 余弦函數(shù)
例:Cos(0) 結(jié)果:1
3. Exp(N) e為底的指數(shù)函數(shù)
例:Exp(3) 結(jié)果:20.068
4. Log(N) 以e為底的自然對數(shù)
例:Log(10) 結(jié)果:2.3
5. Rnd[(N) 產(chǎn)生隨機(jī)數(shù)
例:Rnd 結(jié)果:0--1之間的數(shù)
6. Sin(N) 正弦函數(shù)
例:Sin(0) 結(jié)果:0
7. Sgn(N) 符號函數(shù)
' 說明:取正負(fù)號。Y=Sgn(X) 既 X0 則Y=1;X=0 則Y=0;X0 則Y= -1
8. Sqr(N) 平方根
例:Sqr(9) 結(jié)果:3
9. Tan(N) 正切函數(shù)
例:Tan(0) 結(jié)果:0
10.Atn(N) 反切函數(shù)
例:Atn(0) 結(jié)果:0
[注意]:在三角函數(shù)中,以弧度表示。
(一)字符串類函數(shù):
1. ASC(X),Chr(X):轉(zhuǎn)換字符字符碼
[格式]:
P=Asc(X) 返回字符串X的第一個字符的字符碼
P=Chr(X) 返回字符碼等于X的字符
[范例]:
(1)P=Chr(65)
'輸出字符A,因?yàn)锳的ASCII碼等于65
(2)P=Asc("A")
'輸出65
2. Len(X):計(jì)算字符串X的長度
[格式]:
P=Len(X)
[說明]:
空字符串長度為0,空格符也算一個字符,一個中文字雖然占用2 Bytes,但也算一個字符。
[范例]:
(1) 令X="" (空字符串)
Len(X) 輸出結(jié)果為0
(2) 令X="abcd"
Len(X) 輸出結(jié)果為4
(3) 令X="VB教程"
Len(X) 輸出結(jié)果為4
3. Mid(X)函數(shù):讀取字符串X中間的字符
[格式]:
P=Mid(X,n)
由X的第n個字符讀起,讀取后面的所有字符。
P=Mid(X,n,m)
由X的第n個字符讀起,讀取后面的m個字符。
[范例]:
(1) X="abcdefg"
P=Mid(X,5)
結(jié)果為:P="efg"
(2) X="abcdefg"
P=Mid(X,2,4)
結(jié)果為P="bcde"
4. Replace: 將字符串中的某些特定字符串替換為其他字符串
[格式]:
P=Replace(X,S,R)
[說明]:將字符串X中的字符串S替換為字符串R,然后返回。
[范例]:
X="VB is very good"
P=Replace(X,good,nice)
輸出結(jié)果為:P="VB is very nice"
5. StrReverse:反轉(zhuǎn)字符串
[格式]:
P=StrReverse(X)
[說明]:
返回X參數(shù)反轉(zhuǎn)后的字符串
[范例]:
(1)X="abc"
P=StrReverse(X)
輸出結(jié)果:P="cba"
6. Ucase(X),Lcase(X):轉(zhuǎn)換英文字母的大小寫
[格式]:
P=Lcase(X)
'將X字符串中的大寫字母轉(zhuǎn)換成小寫
P=Ucase(X)
'將X字符串中的小寫字母轉(zhuǎn)換成大寫
[說明]:除了英文字母外,其他字符或中文字都不會受到影響。
[范例]:
(1) 令 X="VB and VC"
則Lcase(X)的結(jié)果為"vb and vc",Ucase(X)的結(jié)果為"VB AND VC"
7. InStr函數(shù):尋找字符串
[格式]:
P=InStr(X,Y)
從X第一個字符起找出Y出現(xiàn)的位置
P=InStr(n,X,Y)
從X第n個字符起找出Y出現(xiàn)的位置
[說明]:
(1) 若在X中找到Y(jié),則返回值是Y第一個字符出現(xiàn)在X中的位置。
(2) InStr(X,Y)相當(dāng)于InStr(1,X,Y)。
(3) 若字符串長度,或X為空字符串,或在X中找不到Y(jié),則都返回0。
(4) 若Y為空字符串,則返回0。
(二)日期時(shí)間類函數(shù):
1. Year(X),Month(X),Day(X):取出年,月,日
[格式]:
P=Year(X)
取出X"年"部分的數(shù)值
P=Month(X)
取出X"月"部分的數(shù)值
P=Day(X)
取出X"日"部分的數(shù)值
[說明]:Year返回的是公元年,若X里只有時(shí)間,沒有日期,則日期視為#1899/12/30#
2. Hour,Minute,Second函數(shù):取出時(shí),分,或秒
[格式]:
P=Hour(X)
取出X"時(shí)"部分的數(shù)值
P=Minute(X)
取出X"分"部分的數(shù)值
P=Second(X)
取出X"秒"部分的數(shù)值
[說明]:Hour的返回值是0---23之間
[范例]:
X=10:34:23
P=Hour(X)
Q=Minute(X)
R=Second(X)
則輸出結(jié)果:P=10,Q=34,R=23
3. DateSerial函數(shù):合并年,月,日成為日期
[格式]:DateSerial(Y,M,D)
其中Y是年份,M為月份,D為日期
[說明]:
(1) M值若大于12,則月份從12月起向后推算M-12個月;若小于1,則月份從1月起向后推算1-M個月。
(2) 若日期D大于當(dāng)月的日數(shù),則日期從當(dāng)月的日數(shù)起,向后推算D-當(dāng)月日數(shù);若小于1,則日期從1日起向前推算1-D日。
[范例]:
P=DateSerial(2000,02,02)
則結(jié)果為P=2000/02/02
4.TimeSerial函數(shù):合并時(shí),分,秒成為時(shí)間
[格式]:P=TimeSerial(H,M,S)
其中H為小時(shí)數(shù),M為分鐘數(shù),S為秒數(shù)
[說明]:推算原理同上面的DateSerial
[范例]:
P=TimeSerial(6,32,45)
結(jié)果為:P=6:32:45
5.Date,Time,Now函數(shù):讀取系統(tǒng)的日期時(shí)間
[格式]:
P=Date()
P=Time()
P=Now()
[說明]:這三個函數(shù)都無參數(shù)
[范例]:
若當(dāng)前時(shí)間為2003年8月29日晚上19點(diǎn)26分45秒,則
P=Now()
結(jié)果為:P=2003-08-29 19:26:45
6.MonthName:返回月份名稱
[格式]:P=MonthName(X)
[說明]:X參數(shù)可傳入1---12,則返回值為"一月"、"二月"……,但是在英文Windows環(huán)境下,返回的是"January","February"……
[范例]:
P=MonthName(1)
則P="一月"
7.WeekdayName:返回星期名稱
[格式]:P=WeekdayName(X)
[說明]:X參數(shù)可傳入1—7,則返回值為"星期日","星期一"……,但是在英文windows環(huán)境下,返回的是"Sunday","Monday"……
[范例]:
P=WeekdayName(1)
結(jié)果為:P="星期日"
函數(shù)名稱 函數(shù)功能
Cbool(string) 轉(zhuǎn)換為布爾值
Cbyte(string) 轉(zhuǎn)換為字節(jié)類型的值
Ccur(string) 轉(zhuǎn)換為貨幣類值
Cdate(string) 轉(zhuǎn)換為日前類型的值
Cdbl(string) 轉(zhuǎn)換為雙精度值
Cint(string) 轉(zhuǎn)換為整數(shù)值
Clng(string) 轉(zhuǎn)換為長整型的值
Csng(string) 轉(zhuǎn)換為單精度的值
Cstr(var) 轉(zhuǎn)換為字符串值
Str(var) 數(shù)值轉(zhuǎn)換為字符串
Val(string) 字符串轉(zhuǎn)換為數(shù)值
***************************************
Abs(nmb) 返回?cái)?shù)子的絕對值
Atn(nmb) 返回一個數(shù)的反正切
Cos(nmb) 返回一個角度的余炫值
Exp(nmb) 返回自然指數(shù)的次方值
Int(nmb) 返回?cái)?shù)字的整形(進(jìn)位)部份 8.4--9
Fix(nmb) 返回?cái)?shù)字的整形(舍去)部份 8.4--8
Formatpercent(表達(dá)式) 返回百分比
Hex(nmb) 返回?cái)?shù)據(jù)的16進(jìn)制數(shù)
Log(nmb) 返回自然對數(shù)
Oct(nmb) 返回?cái)?shù)字的8進(jìn)制數(shù)
Rnd 返回大于“0”而小于“1”的隨機(jī)數(shù)
Sgn(nmb) 判斷一個數(shù)字的正負(fù)號
Sin(nmb) 返回角度的正鉉值
Sqr(nmb) 返回?cái)?shù)字的二次方根
Tan(nmb) 返回一個數(shù)的正切值
Asc(string) 返回ASCII字符串
Chr(charcode) 根據(jù)字符代碼返回字符
Instr(string,searchstr) 返回被搜索字符串的第一個字符位置,string是字符串,searchstr是被搜索的字符串
InstrRev(string,searchstr) 同上,只是從右面開始搜索
Lcase(var) 把字符串變?yōu)樾?/p>
Left(string,nmb) 從string中返回從左面開始的nmb個字符串
Len(string) 返回字符串的長度
Ltrim(string) 截去字符串左邊的空格
Filter(inputstrings,value) 返回字符串?dāng)?shù)組的字集,Inputstrings是字符串組,value是在數(shù)組中尋找的字符
Rtrim(string) 截去字符串右邊的空格
Trim(string) 截去字符串前后空格
Mid(string,start,len) 在string中返回從start位置開始的len個字符
Replace(string,find,withstr) 在字符串string中,用withstr來替換find字符串
Right(string,nmb) 從string中返回從右面開始的nmb個字符串
Space(nmb) 返回指定空格的字符串
StrComp(string1,string2) 比較兩個字符串
Ucase(string) 把字符串變?yōu)榇髮?/p>
****************************************
Date() 返回當(dāng)前系統(tǒng)日期
DateAdd(interval,nmb,date) 用一個基礎(chǔ)時(shí)間返回指定增加了時(shí)間間隔的日期,interval是間隔類型,yyyy-年,m-月,d-日,h-小時(shí),n-分。
DateDiff(interval,nmb1,nmb2) 返回兩個時(shí)間間隔,interval的意思同上
Datevalue(date) 發(fā)揮Date中的日期部份
Day(date) 返回天數(shù)
FormatDatetime(date) 返回格式化為日期的表達(dá)式
Hour(time) 返回時(shí)間的小時(shí)數(shù)
Minute(time) 返回時(shí)間的分鐘數(shù)
Month(date) 返回日期中的月份
Now() 返回系統(tǒng)的日期和時(shí)間
Second(time) 返回時(shí)間中的秒數(shù)
Time() 返回系統(tǒng)的當(dāng)前時(shí)間
Weekday(date) 返回星期幾
WeekdayName(date) 返回星期幾的中文名
Year(date) 返回年份
IsArray(var) 判斷一個變量是否是數(shù)組
IsDate(var) 判斷一個變量是否是日期
IsNull(var) 判斷一個變量是否為空
IsNumeric 判斷表達(dá)式是否包含數(shù)值
IsObject(var) 判斷一個變量是否是對象
TypeName(var) 返回變量的數(shù)據(jù)類型
************************************
Array(list) 返回?cái)?shù)組
CreateObject(class) 創(chuàng)建一個對象
GetObject(pathfilename) 得到文件對象
Inputbox(prompt) 提供一個可供輸入數(shù)據(jù)的對話框
LBound(arrayP) 返回?cái)?shù)組的最小索引
Msgbox(string) 輸出一個消息框
Split(liststr) 從一個列表字符串中返回一個一維數(shù)組
Ubound(array) 返回?cái)?shù)組的最大索引
我寫了一段代碼,注意你讀取的方法,我改進(jìn)了一下 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) ’注意選擇編碼方式,按你原來的方法,未設(shè)置編碼,顯示的是亂碼!路徑請按你的情況改! TextBox.Text = sr.ReadToEnd()
i += 1 End If
Next
MsgBox("已經(jīng)載入" i - 1 "個文件") End Sub注意:這樣的代碼是倒序的,第一個文本框顯示的是最后一個文件的內(nèi)容!請酌情處理!
當(dāng)前題目:vb.net語句大全,VBNet
文章出自:http://chinadenli.net/article38/heospp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、網(wǎng)站排名、標(biāo)簽優(yōu)化、外貿(mào)網(wǎng)站建設(shè)、商城網(wǎng)站、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)