Notice
Recent Posts
Recent Comments
Link
«   2026/01   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

자본 엄.슴.

Ruby 배열 본문

Ruby

Ruby 배열

자본없음 2019. 2. 12. 21:08

배열 기본

배열은 여러 값들을 한 변수에 묶은 것이다. Array.new를 이용해서 선언할 수 있다.

array = Array.new 3
p array

결과

[nil, nil, nil]

참고로 p 함수는 객체의 inspect를 출력한다. puts 함수는 to_s, 즉 객체를 문자열로 바꾸어서 출력하지만 inspect는 객체의 상태를 변환한다. new 뒤에는 숫자를 인자로 넣을 수 있는데 배열의 크기를 뜻한다. 그 크기만큼 nil로 채워지게 된다. 값을 넣은 상태로 배열을 선언하고 싶으면 대괄호를 사용하면 된다.

array = [1, 2, 3]
p array

결과

[1, 2, 3]

배열의 특정 원소에 접근하고 싶을 때는 변수이름[숫자] 형식으로 사용하면 된다. 참고로 배열의 원소는 1부터가 아니라 0부터 시작한다.

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

결과

1

문자열과 심볼 배열

문자열과 심볼 모두 이전에 했던 것처럼 Array.new나 대괄호를 이용해서 선언할 수 있다. 그런데 좀 더 편리하게 퍼센트문자열을 이용해서 배열을 만들 수 있다. 문자열의 배열은 %w를 이용해서 만들 수 있고, 심볼의 배열은 %i를 이용해서 만들 수 있다.

string_array = %w(one two three)
symbol_array = %i(one two three)

p string_array
p symbol_array

결과

["one", "two", "three"]
[:one, :two, :three]

배열 메서드

루비에는 배열을 다룰 수 있는 유용한 메서드들이 많이 있다.

array1 = [1,2,3,4]
array2 = [3,4,5,6]

p array1.first           #배열의 첫 번째 값 반환
p array1.first 2         #배열의 처음부터 2개 반환
p array1.last            #배열의 마지막 값 반환
p array1.last 2          #배열의 마지막부터 2개 반환
p array1.push 5          #배열의 마지막에 추가
p array1
p array1.pop             #배열의 마지막을 제거하고 반환
p array1
p array1.unshift 0       #배열의 앞에 추가
p array1
p array1.shift           #배열의 처음을 제거하고 반환
p array1

p array1+array2          #두 배열을 합쳐서 반환
p array1-array2          #일치하는 배열 제거해서 반환
p array1*3               #배열을 숫자만큼 반복해서 반환

결과

1
[1, 2]
4
[3, 4]
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
5
[1, 2, 3, 4]
[0, 1, 2, 3, 4]
[0, 1, 2, 3, 4]
0
[1, 2, 3, 4]
[1, 2, 3, 4, 3, 4, 5, 6]
[1, 2]
[1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]

이 외에도 배열에 대한 메서드는 많다.

'Ruby' 카테고리의 다른 글

Ruby 심볼  (0) 2019.02.08
Ruby 문자열  (0) 2019.02.06
Ruby 객체(2)  (0) 2019.02.02
Ruby 모듈  (0) 2019.01.31
Ruby 싱글톤 메서드  (0) 2019.01.30
Comments