Skocz do zawartości

Witaj!

Zaloguj lub Zarejestruj się aby uzyskać pełny dostęp do forum.

Zdjęcie
- - - - -

Swift i tablice wielowymiarowe


  • Zaloguj się, aby dodać odpowiedź
4 odpowiedzi w tym temacie

#1 dazinf

dazinf
  • 10 postów
  • SkądKarpacz

Napisano 20 kwietnia 2016 - 18:12

Potrzebuję zadeklarować tablicę wielowymiarową (taką niby macierz, żeby móc potem na niej liczyć). No i niestety musi być dwuwielowymiarowa. 

Przyzwyczajenia z C++ sugerują mi coś w stylu var table [2][5] = wartość. Ale to niestety nie działa.

Jak rozwiązać ten problem. Są jakieś alternatywy?

 


"Żyj dziś."

#2 AdiGITAL

AdiGITAL
  • 400 postów

Napisano 20 kwietnia 2016 - 21:23

Potrzebuję zadeklarować tablicę wielowymiarową (taką niby macierz, żeby móc potem na niej liczyć). No i niestety musi być dwuwielowymiarowa. 
Przyzwyczajenia z C++ sugerują mi coś w stylu var table [2][5] = wartość. Ale to niestety nie działa.
Jak rozwiązać ten problem. Są jakieś alternatywy?

Spróbuj tego:
var NumColumns = 27
var NumRows = 52
var array = Array()
for column in 0..NumColumns {
array.append(Array(count:NumRows, repeatedValue:Double()))
}

Wygrzebane z: http://stackoverflow...arrays-in-swift

#3 enedil

enedil
  • 108 postów
  • SkądPorfia, Chile

Napisano 20 kwietnia 2016 - 22:47

Generalnie ta odpowiedź [1] zawiera mnóstwo dobrych rozwiązań.

 

[1] https://stackoverflo...arrays-in-swift



#4 dazinf

dazinf
  • 10 postów
  • SkądKarpacz

Napisano 21 kwietnia 2016 - 09:50

Spróbuj tego:
var NumColumns = 27
var NumRows = 52
var array = Array()
for column in 0..NumColumns {
array.append(Array(count:NumRows, repeatedValue:Double()))
}

Wygrzebane z: http://stackoverflow.com/questions/24051490/multidimensional-arrays-in-swift

 

A jak z tego wyciągać i wrzucać wartości? 


"Żyj dziś."

#5 AdiGITAL

AdiGITAL
  • 400 postów

Napisano 21 kwietnia 2016 - 22:20

Np:

array[0] = [0,1,2]

array[1] = [3,4,5]

 

print("Element zawiera wartość \(array[1][1])")

 

Może bez pętli będzie łatwiej. Wrzuć sobie to do Playground i się pobaw:

 

var array3D: [[[Int]]] = [[[1, 2], [3, 4]], [[5, 6], [7, 8]]]

array3D[0]

array3D[0][1]

array3D[0][1][1]


Użytkownik AdiGITAL edytował ten post 21 kwietnia 2016 - 22:23





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych