操作回顾
代码的前三行简单地定义了变量第一行中splitChars是一个字符串变量包含用于划分语句的字符第二行中的words是一个字符串数组第三行中的wordIndex是一个Integer变量用于计算数组
Dim splitChars As String =
Dim words() As String
Dim wordIndex As Integer
接下来使用Split方法将输入到文本框中的语句划分成一个数组虽然Split看上去是Text属性的一种方法但必须记住Text属性返回String因此Split是String类的方法传递到字符串中的参数并不是splitChars变量本身而是己经转换成字符数组的splitChars(使用ToCharArray方法)这是因为Split方法的所需类型为字符数组该方法在划分字符串中允许很大的灵活性
words = TextBoxTextSplit(splitCharsToCharArray())
在这个阶段words数组现在对语句中的每个单词都包含一个单独的记录项用于添加到列表框中在将这些单词添加到列表中之前要清除现有的Items集合该操作防止在多次单击按钮之后列表会变得更长然后循环遍历该单词数组但是是反向循环将每个单词添加到列表中
ListBoxItemsClear()
For wordIndex = wordsLength To Step
ListBoxItemsAdd(words(wordIndex))
Next
不要过分担心循环语句的确切语法──在本章稍后部分将会介绍
一旦单词进入到列表中它们还可以被再次移动到另一个字符串中这里使用了一个初始值StringEmpty这看上去或许有点不同寻常但对于初始化字符串来说这确实是一件很平常的事情
Dim paragraph As String = StringEmpty
StringEmpty是一个特殊值它表示该字符串为空与字符串被赋值为不同虽然字符串的长度为不包含任何字符但它有一个值长度字符串与空字符串之所以存在区别是因为它允许您检测该字符串是否已经被设置或者已经修改了它的初始值声明初始值的一个原因是如果不声明初始值那么在VWD中将会出现警告但是后面的一行代码表明该paragraph变量在被设置之前己经使用在该示例中这并不重要但是在VWD中简化警告则意味着更容易发现有关的警告和错误
现在循环遍历列表框的Items集合Items集合中包含ListItem对象每个ListItem的Value都只是简单地连同空格一起插入到段落字符串中
For Each word As ListItem In ListBoxItems
paragraph &= wordValue &
Next
最后该段落显示在第二个文本框中
TextBoxText = paragraph
这种颠倒语句中单词的方法看上去可能相当冗长但是该练习旨在表明在使用数组和集合时可以使用许多不同的方法
ASPNET 入门教程完整版
[] [] [] [] []