加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vb.net – 从数组中删除最后一个元素

发布时间:2020-12-17 07:26:25 所属栏目:百科 来源:网络整理
导读:如何从VB.NET中删除数组中的最后一个元素.我需要分开街道和房子. 街 拆分空格上的地址 删除最后一个元素(代码中缺少) 加入数组 数 拆分空格上的地址 获取最后一个元素 我的代码: 'split addressDim addressArray() As String = args.Content.Split(" ")'rem
如何从VB.NET中删除数组中的最后一个元素.我需要分开街道和房子.

>拆分空格上的地址
>删除最后一个元素(代码中缺少)
>加入数组

>拆分空格上的地址
>获取最后一个元素

我的代码:

'split address
Dim addressArray() As String = args.Content.Split(" ")

'remove last element and return the joined array
Return String.Join(" ",addressArray.Remove(addressArray.Length() - 1))

解决方法

Dim foo() As String = "This is a test".Split(New Char() {" "c},StringSplitOptions.RemoveEmptyEntries)
    Array.Resize(foo,foo.Length - 1)
    Dim s As String = String.Join(" ",foo)

或使用清单

Dim foo As New List(Of String)
    foo.AddRange("This is a test".Split(New Char() {" "c},StringSplitOptions.RemoveEmptyEntries))
    foo.RemoveAt(foo.Count - 1)
    Dim s As String = String.Join(" ",foo)

至于使用LINQ和性能,自己判断

Public Class Form1

    'to LINQ or not to LINQ
    'judge for yourself

    Dim stpw As New Stopwatch

    Private Sub Button1_Click(sender As System.Object,_
                              e As System.EventArgs) Handles Button1.Click

        Dim ipsumA() As String = New String() {"Lorem","ipsum","dolor","sit",_
                                               "amet","consectetur","adipisicing",_
                                               "elit","sed","do","eiusmod",_
                                               "tempor","incididunt","ut","labore",_
                                               "et","dolore","magna","aliqua","Ut",_
                                               "enim","ad","minim","veniam","quis",_
                                               "nostrud","exercitation","ullamco",_
                                               "laboris","nisi","aliquip","ex",_
                                               "ea","commodo","consequat","Duis","aute",_
                                               "irure","in","reprehenderit",_
                                               "voluptate","velit","esse","cillum",_
                                               "eu","fugiat","nulla","pariatur","Excepteur",_
                                               "sint","occaecat","cupidatat","non","proident",_
                                               "sunt","culpa","qui","officia","deserunt",_
                                               "mollit","anim","id","est","laborum"}

        Const tries As Integer = 100000
        Debug.WriteLine("")

        stpw.Reset()
        stpw.Start()
        For x As Integer = 1 To tries
            Dim s As String = arrayTake(ipsumA)
        Next
        stpw.Stop()
        Debug.WriteLine(stpw.ElapsedTicks.ToString)

        stpw.Reset()
        stpw.Start()
        For x As Integer = 1 To tries
            Dim s As String = arrayRsz(ipsumA)
        Next
        stpw.Stop()
        Debug.WriteLine(stpw.ElapsedTicks.ToString)

    End Sub

    Private Function arrayRsz(test As String()) As String
        Array.Resize(test,test.Length - 1)
        Return String.Join(" ",test)
    End Function

    Private Function arrayTake(test As String()) As String
        Return String.Join(" ",test.Take(test.Length - 1))
    End Function
End Class

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读