Kaip sujungti masyvus rubine

click fraud protection

„Koks yra geriausias būdas derinti masyvai? “Šis klausimas yra gana neaiškus ir gali reikšti keletą skirtingų dalykų.

Susikaupimas

Susikaupimas - tai pridėti vieną dalyką prie kito. Pavyzdžiui, masyvų sujungimas [1,2,3] ir [4,5,6] duos [1,2,3,4,5,6]. Tai galima padaryti keliais būdais Rubinas.

Pirmasis yra pliuso operatorius. Tai pridedama viena masyvas iki kito galo, sukurdamas trečiąjį masyvą su abiejų elementais.

Arba naudokite sutikti metodas (+ operatorius ir concat metodas yra funkciškai lygiaverčiai).

Jei atliksite daug šių operacijų, galbūt norėsite to išvengti. Objekto kūrimas nėra nemokamas, o kiekviena iš šių operacijų sukuria trečiąjį masyvą. Jei norite pakeisti masyvą savo vietoje, padidindami jį su naujais elementais, galite naudoti operatorių <<. ta jei i k nors pana gausite netik rezultat>

Vietoj laukto [1,2,3,4,5,6] masyvas, kurį gauname [1,2,3,[4,5,6]]. Tai prasminga, pridėtas operatorius paima jūsų duotą objektą ir prideda jį prie masyvo pabaigos. Nežinojo ir nerūpėjo, kad bandėte prie masyvo pridėti kitą masyvą. Taigi mes patys galime tai įvertinti.

instagram viewer

Nustatykite operacijas

Pasaulio „kombainas“ taip pat gali būti naudojamas aprašytoms operacijoms. Pagrindinės susikirtimo, sujungimo ir skirtumų operacijos yra „Ruby“. Atminkite, kad „rinkiniai“ apibūdina objektų (arba matematikos, skaičių) rinkinį, kuris yra unikalus tame rinkinyje. Pvz., Jei turėtumėte atlikti nustatytą masyvo operaciją [1,1,2,3] „Ruby“ filtruoja tą antrąją 1, nors gautame rinkinyje gali būti 1. Taigi žinokite, kad šios nustatytos operacijos skiriasi nuo sąrašo operacijų. Rinkiniai ir sąrašai yra iš esmės skirtingi dalykai.

Galite pasirinkti dviejų rinkinių sąjungą naudodami | operatorius. Tai yra „arba“ operatorius, jei elementas yra viename ar kitame rinkinyje, jis yra gautame rinkinyje. Taigi rezultatas [1,2,3] | [3,4,5] yra [1,2,3,4,5] (atminkite, kad nors yra du trečdaliai, tai yra nustatyta operacija, o ne sąrašo operacija).

Dviejų rinkinių susikirtimas yra dar vienas būdas sujungti du rinkinius. Vietoj operacijos „arba“ dviejų rinkinių susikirtimas yra operacija „ir“. Rezultato rinkinio elementai yra tie, kurie pateikti tiek rinkiniai. Būdami „ir“ operacija, mes naudojame „&“ operatorių. Taigi rezultatas [1,2,3] & [3,4,5] yra tiesiog [3].

Galiausiai, dar vienas būdas „sujungti“ du rinkinius - atsižvelgti į jų skirtumą. Dviejų aibių skirtumas yra visų pirmojo rinkinio objektų aibė, kuri yra ne antrame rinkinyje. Taigi [1,2,3] - [3,4,5] yra [1,2].

Užtrauktukas

Galiausiai yra „užtrauktukas“. Du masyvai gali būti užfiksuoti kartu, derinant juos gana unikaliu būdu. Geriausia pirmiausia tai parodyti, o po to paaiškinti. Rezultatas [1,2,3] .zip ([3,4,5]) yra [ [1,3], [2,4], [3,5] ]. Taigi, kas čia nutiko? Du masyvai buvo sujungti, pirmasis elementas yra visų elementų, esančių abiejose masyvuose, pirmoje padėtyje, sąrašas. „Zipping“ yra šiek tiek keista operacija, todėl galite nerasti daug naudos. Jos tikslas yra sujungti du masyvus, kurių elementai glaudžiai koreliuoja.

instagram story viewer