루비 기초 문법(2)
이번은 루비 기초 문법(1)에 이은 (2) 포스팅을 해보고자 합니다.
처음에는 루비의 배열과 해시에 대해 알아보도록 하겠습니다.
그 전에 변수 선언 방법에 대해 알고 넘어가도록 하겠습니다.
지역 변수는 그냥
name = "L3opold7"
처럼 선언하면 됩니다.
그리고 인스턴스 변수
@name = "L3opold7"
다음과 같습니다.
또 여러가지가 있습니다.
클래스 변수: @@name
전역 변수: $name
상수 이름: NAME
클래스 이름: MyName
이렇게 다양한 이름의 규칙이 있습니다.
그리고 이제 배열과 해시를 알아보겠습니다.
배열과 해시, 두개 모두 루비에서 키(key)를 이용해서 접근할 수 있는 객체의 모음 이라고 할 수 있습니다.
차이점이 있다면, 배열에서는 키값으로 정수만! 해시는 어떤 객체든 사용할 수 있습니다.
보통은 배열을 사용하지만 키(key)값의 유연성에서 해시가 더 편리합니다.
그리고 잠깐의 Tip!
많은 언어에서의 null을 루비에서 nil로 알고 있으신 분들이 많은 것 같습니다.
하지만 루비에서의 nil은 다른 언어에서의 null이 아니라 아무것도 아니라는 뜻의 객체입니다(?).
루비는 모든 것이 객체입니다. nil 역시 객체입니다.
다시 배열과 해시쪽으로 돌아와서 배열을 선언하는 방법에는 두 가지가 있습니다.
다른 언어에서도 사용되는 형태인
name = ['L3opold7','Myungseo','Kang','Leopold']
하지만 단축 문법을 사용하면 다음과 같이 나타낼 수 있습니다.
name = %w{L3opold7 Myungseo Kang Leopold}
단축 문법을 사용하는 것도 좋을듯합니다.
확실히 코드도 줄어들고 보기도 편합니다.
다음은 해시의 선언 방법입니다.
name = { 'myungseo' => 'L3opold7', 'dohyun' => 'ner0', 'giyong' => 'tonix', 'sihun' => 'push0ebp' }
위와 같이 만들 수 있습니다.
만약 L3opold7 이라는 값을 가져오고 싶다면? 다음과 같이 작성해보세요.
puts name['myungseo']
이렇게 스크립트를 작성하게 되면 L3opold7 이라는 출력값을 얻게 됩니다.
엉뚱한 키값을 넣어서 해시를 호출했다면 그 출력값은 아마 nil 이 나올 겁니다.
읽어주셔서 감사합니다 :)
'Ruby > Study' 카테고리의 다른 글
루비 기초 문법(4) (0) | 2016.06.14 |
---|---|
루비 기초 문법(3) (0) | 2016.04.21 |
루비 기초 문법(1) (0) | 2016.03.28 |
루비 기본 상식! (0) | 2016.03.24 |
Nokogiri, open-uri 사용하기 (0) | 2016.03.24 |