How to cross joins two arrays and get cartesian product using Linq in VB.NET

1 Answer

0 votes
Imports System
Imports System.Linq

Public Class Program
	Public Shared Sub Main()
        Dim arr_str As String() = {"c#", "c", "java", "python", "dart"}
        Dim arr_num As Integer() = {1, 2, 3, 4}

		Dim result = From f In arr_str
                 From a In arr_num
                 Select New With { _
                    Key.Language = f, _
                    Key.Number = a _
                 }
			
        For Each r In result
            Console.WriteLine(String.Format("{0} {1}", r.Language, r.Number))
        Next
    End Sub
End Class




' run:
'
' c# 1
' c# 2
' c# 3
' c# 4
' c 1
' c 2
' c 3
' c 4
' java 1
' java 2
' java 3
' java 4
' python 1
' python 2
' python 3
' python 4
' dart 1
' dart 2
' dart 3
' dart 4
' 

 



answered Jan 3, 2023 by avibootz
...