Zakres odnosi się do obiektu, który rejestruje określoną sekwencję. Definiujemy zakresy z określoną wartością początkową i końcową, a następnie rozkładamy wartości między zakresem wartości początkowych i końcowych.
Prosty przykład może mieć wartości od 10 do 100. Między wartością 10 a 100, możesz mieć sekwencję, aby uwzględnić tylko liczby równe i takie.
Korzystając z tego przewodnika, dowiemy się, jak tworzyć zakresy w Ruby, pracować z metodą kroków, a na koniec przekonwertować zakres na tablicę.
Pierwsze kroki z zasięgami
Używamy podwójnej kropki (…) i potrójnej kropki (…), aby stworzyć zasięg w Ruby.
Notacja podwójnej kropki wytwarza zakres wartości, w tym wartości początkowe i końcowe zakresu.
Z drugiej strony notacja trzech kropek wyklucza wartość końcową (wysoką) z listy wartości.
Rozważ poniższy przykład:
(1… 10)Oba powyższe przykłady to ważne zakresy rubinowe. Jednak wyjście wartości jest jak odpowiednio (odpowiednio).
1, 2, 3, 4, 5, 6, 7, 8, 9, 10Przykład 1
Aby sprawdzić, czy zakres obejmuje wartość, możemy użyć różnych metod, takich jak include? Spójrz na poniższy przykład:
Puts (1… 10).włączać?(10) # => TruePrzykład 2
Wartości z zakresu nie są oznaczone jako lista. Są to rzeczywiste obiekty zasięgu klasy zawierającej wymyślne. Dlatego możemy wykonać operacje iteracji w zakresie bez konwersji na obiekt tablicy.
Rozważ prosty przykład poniżej:
bo IN (1… 10)Korzystając z prostej pętli, możemy pobrać każdy element w zakresie i działać na wartości.
Przykład 3
Inną metodą, którą możemy zastosować do zakresu, jest metoda odrzucania. Ta metoda usunie wszystkie wartości, które nie spełniają określonego warunku. F
Na przykład weź zakres od 1 do 100; Możemy odrzucić wszystkie wartości, które nie są nawet numerycznie.
Poniżej znajduje się przykładowy kod:
Puts (1… 100).Odrzuć | i | I.nawet? != trueRuby jest tak elastyczna, że pozwala zrobić więcej z kilkoma wierszami kodu.
W naszym powyższym przykładzie używamy wbudowanych metod rubinowych do odfiltrowania zakresu i uwzględniamy tylko wartości równomierne .
Poniżej znajduje się przykład wyjścia:
2Metoda kroku w Ruby
Załóżmy, że chcemy stworzyć zasięg, ale w określonym przedziale? W takim scenariuszu możemy użyć metody kroku. Ta metoda zwiększy wartości w zakresie (między początkiem a końcem) w porównaniu z przyrostem określonej wartości.
Zilustrujmy to przykładem:
vars = (10… 100).krok 3)NOTATKA: Ignoruj metodę to_a (omówioną później).
Powyższy przykład powinien podać wyjście podobne do tego pokazanego poniżej:
10Jak zauważysz, dodajemy 3 do bieżącej wartości lub drukujemy co trzeci element z bieżącej pozycji.
Zakres do tablicy
#to_a
Czy pamiętasz wspomnianą powyżej metodę TO_A? Omówmy, co to znaczy i jak to działa. Metoda TO_A pomaga przekonwertować sekwencję wartości na tablicę.
Na przykład rozważ poniższy przykład:
SEQ = (1… 10)Powyższy przykład zwróci wartości z zakresu w formacie tablicy. Pomyśl o tym jako o zapętlaniu każdego elementu w zakresie i dołączając go do tablicy. Oto prosta ilustracja.
Arr = []Zaczynamy od zdefiniowania pustej tablicy. Następnie iterujemy nad elementami w zakresie i naciskamy każdy element do kolekcji.
Szyk()
Ruby pozwala również użyć metody Array () do utworzenia nowej tablicy z elementów w zakresie.
Rozważ poniższy przykład:
ARR = tablica ((1… 10))Tak, metoda wygląda jak klasa tablicy. Musisz jednak dodać parę nawiasów, aby poinformować Ruby znać metodę tablicy, a nie klasę.
Powstała wartość to zakres wartości w formacie tablicy.
Zamknięcie
Ten przewodnik zawiera informacje o tym, jak pracować z Ruby Panszami. Korzystając z tego przewodnika, rozumiesz teraz, jak pracować z zakresami i konwertować je na tablicę.
Dziękujemy za przeczytanie i bądź na bieżąco z kolejnymi przewodnikami rubinowymi.