1. fotoaparati
  2. Car Audio & Electronics
  3. Home Audio
  4. Osobni Audio
  5. TV
  6. Pametna kuća
  >> Hrvatska Electronic Technology >  >> Pametna kuća >> Pametan život

Kako stvoriti višedimenzionalni niz u Rubyju

Kako stvoriti višedimenzionalni niz u Rubyju. Iako Ruby ne pruža eksplicitnu podršku za višedimenzionalne nizove, možete ga sami implementirati ako imate osnovno znanje jezika. U biti morate stvoriti "niz nizova" u kojem svaki element niza sadrži još jedan niz. Da biste stvorili takav višedimenzionalni niz u Rubyju, možete napisati metodu koja se koristi za generiranje nizova nizova tako da se kôd ne mora ponavljati.

Stvorite višedimenzionalni niz u Rubyju

1. korak

Napišite kostur metode. Ova metoda će uzeti niz argumenata dimenzije i vratiti prazan višedimenzionalni niz tih dimenzija. Na primjer, za niz 10x10, nazovite ovu metodu mda(10,10):def mda(width,height)end

2. korak

Napravite niz elemenata širine.

3. korak

Napravite niz elemenata visine za svaki element u nizu. To čini "niz nizova" koji će se koristiti kao dvodimenzionalni niz. Da biste stvorili prazne nizove određene duljine, upotrijebite konstruktor Array.new s duljinom kao argumentom. U početku će sve vrijednosti u nizu biti nula.

4. korak

Koristite kartu! metoda također. Karta! metoda ponavlja svaki element u nizu, pokreće blok za svaki i dodjeljuje rezultat bloka elementu niza. Isti se rezultat može postići korištenjem for petlje, ali map! metoda je sažetija:def mda(width,height)a =Array.new(width)a.map! { Array.new(height) }return aend

Korak 5

Koristite ovaj niz s operatorom indeksa (uglate zagrade []). Na primjer, ako imate polje 10x10 pod nazivom "a" i želite element 7,3, rekli biste a[7][3]:a =mda(10,10)# Ispunite polje vrijednostimaa[7][ 5] ="niz"a[2][9] =23# Dohvaćanje vrijednosti stavlja a[7][5]stavlja[2][9]

Korak 6

Iskoristite mogućnost "lančanih" poziva metoda u Rubyju. Na primjer, metoda Array.new vraća niz. Možete ulančati drugi poziv metode na to da pozovete metodu na vraćenom nizu. Budući da povezujete metode u lancu, a ne koristite naredbu return, ne trebate ni naziv varijable:def mda(width,height)Array.new(width).map!{ Array.new(height) }end

Savjet

Ruby je vrlo izražajan. MDA metoda može biti kratka i sažeta jedna linija koda. Dodatni redovi i ključne riječi samo čine da kod izgleda kompliciranije nego što stvarno jest. Naredba return nije neophodna u Rubyju. Ruby metode i blokovi automatski vraćaju rezultat zadnje naredbe izvršene u metodi ili bloku.


  1. Kako stvoriti binarno stablo u C
  2. Kako stvoriti niz u Pythonu
  3. Kako stvoriti 3D grafikon u programu Excel
  4. Kako napraviti račun e-pošte
  5. Kako izraditi HTML banner oglas