Array.Concat funktionert nicht richtig?

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von vb-programmer.

    Array.Concat funktionert nicht richtig?

    Hallo!
    Ich habe da ein kleines Problem. Ich will zwei PointF-Arrays in einem dritten Array haben. Hab es so versucht, aber komischerweise sind im Array pnt3 die Stellen 3 und 4 = (0, 0) ??

    VB.NET-Quellcode

    1. Dim pnt1() As PointF = {New PointF(10, 10), New PointF(20, 20)}
    2. Dim pnt2() As PointF = {New PointF(30, 30), New PointF(40, 40)}
    3. Dim pnt3(pnt1.Count + pnt2.Count - 1) As PointF
    4. pnt1.CopyTo(pnt3, 0)
    5. pnt3.Concat(pnt2)
    6. For i = 0 To UBound(pnt3)
    7. MsgBox(pnt3(i).ToString())
    8. Next

    Hab ich das Concat falsch angewendet bzw. weiß einer eine elegantere Methode?
    Hi
    Wie wärs mit

    VB.NET-Quellcode

    1. Dim pnt1() As PointF = {New PointF(10, 10), New PointF(20, 20)}
    2. Dim pnt2() As PointF = {New PointF(30, 30), New PointF(40, 40)}
    3. Dim pnt3(pnt1.Count + pnt2.Count - 1) As PointF
    4. pnt1.CopyTo(pnt3, 0)
    5. pnt2.CopyTo(pnt3, 2)
    6. For i = 0 To pnt3.GetUpperBound(0)
    7. MsgBox(pnt3(i).ToString())
    8. Next

    Concat würde wahrscheinlich pnt2 an pnt3 dranhängen (also wäre pnt3 dann 6 Elemente lang). Bin mit den neueren FWs nicht so bewandert, da ich im Moment nur auf Kompatibilität aus bin...

    Gruß
    ~blaze~