关于String和StringBuilder比较

colrry 2008-04-01 10:07:57
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.Text = ""
TextBox2.Text = ""
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim startTime As Long = DateTime.Now.Ticks
Dim myString As String = "This is"
Dim i As Integer
For i = 0 To 20
myString += myString
Next
Dim endTime As Long = DateTime.Now.Ticks
TextBox1.Text = (endTime - startTime) * 10
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim startTime As Long = DateTime.Now.Ticks
Dim myStringBuilder As New System.Text.StringBuilder(7)
myStringBuilder.Append("This is")
Static Dim i As Integer = 0
For i = 0 To 20
myStringBuilder.Append("This is")
i += 1
Next
Dim endTime As Long = DateTime.Now.Ticks
TextBox2.Text = (endTime = startTime) * 10
End Sub
End Class

这个比较有问题,何处有问题?谢谢
...全文
283 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zj0201 2008-04-03
  • 打赏
  • 举报
回复
string 型数据,如果用+连接,对短字符串没有影响,如果是大字符串的话,特别是做很大的循环处理,建议不要用+连接符,要么用API自己来连接,参照Copymemory的用法, 要么用StringBuilder,推荐后一种,其实后一种底层实现是前一种。
zy227 2008-04-03
  • 打赏
  • 举报
回复
..
jikun6666 2008-04-03
  • 打赏
  • 举报
回复
上msdn上搜索看看啊
vrhero 2008-04-02
  • 打赏
  • 举报
回复
20次循环几乎不耗费资源...称不上频繁...没有意义...
zy227 2008-04-02
  • 打赏
  • 举报
回复
For i = 0 To 20
myString += myString
Next

沒看懂 這個有什麽用??

沒有實際意義阿
水如烟 2008-04-01
  • 打赏
  • 举报
回复
如果较多的字符串连接成一串的话,用stringBuilder

这个不需比较的了.你这样比较法也不科学.

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧