Двумерный массив в string и обратно - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток! Имеется код который переводит двумерный массив в строку и обратно, есть ли возможность преобразование массива без использования циклов?
Листинг программы
  1. Public Class Form1
  2. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  3. Dim q(1, 2) As String
  4. q(0, 0) = "0.0"
  5. q(0, 1) = "0.1"
  6. q(0, 2) = "0.2"
  7. q(1, 0) = "1.0"
  8. q(1, 1) = "1.1"
  9. q(1, 2) = "1.2"
  10. Dim w As String = ""
  11. For i As Integer = 0 To q.GetLength(0) - 1
  12. For ii As Integer = 0 To q.GetLength(1) - 1
  13. w = w & q(i, ii) & "?"
  14. If ii = q.GetLength(1) - 1 Then
  15. w = w & "@"
  16. End If
  17. Next
  18. Next
  19. MsgBox(w)
  20. 'обратный перевод данных в массив ИЗ STRING
  21. For i As Integer = 0 To q.GetLength(0) - 1
  22. For ii As Integer = 0 To q.GetLength(1) - 1
  23. q(i, ii) = w.Split("?")(ii)
  24. MsgBox(q(i, ii))
  25. If w.Split("@").Length - 1 = 2 Then
  26. If ii = q.GetLength(1) - 1 Then
  27. w = w.Split("@")(1)
  28. End If
  29. End If
  30. Next
  31. Next
  32. End Sub
  33. End Class

Решение задачи: «Двумерный массив в string и обратно»

textual
Листинг программы
  1. 'to string
  2. Dim nj As Integer = q.GetLength(1)
  3. Dim ss = (From t In q Select t).Select(Function(t, i) If((i + 1) Mod nj = 0, t & "@", t & "?")).ToArray
  4. Dim str As String = String.Join("", ss)
  5.  
  6. 'back in
  7. Dim qq(1, 2) As String
  8. Dim rr() As String = str.Split("@")
  9. For i = 0 To qq.GetLength(0) - 1
  10.     Dim ww() As String = rr(i).Split("?")
  11.     For j = 0 To qq.GetLength(1) - 1
  12.         qq(i, j) = ww(j)
  13.     Next
  14. Next

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы