Ruby (8)

lakewood·2021년 1월 1일
0

ruby

목록 보기
7/14
post-custom-banner

메소드

모든 문장은 명사와 동사로 이루어져 있다.

루비의 세계에서는 객체가 명사이고
메소드가 동사이다.

method

위의 사진처럼 메소드는 객체를 메소드에 집어 넣으면
메소드에서 어떠한 일이 수행되고 수행이 끝난 객체가 나오게 된다.

def 메소드 이름 (매개변수)

을 통해 메서드를 선언할 수 있으며

def is_even (number)
	if number % 2 == 0
    	puts "even"
    else
        puts "odd"
    end
end

다음과 같이 짝수인지 홀수인지
판별하는 함수를 작성할 수 있다.

irb에서 직접
메소드를 실행해볼 수 있다.

메소드 호출 결과

3.0.0 :008 > is_even (10)
even
 => nil

메서드는 def 키워드를 이용하여 정의하며
class와 module에 정의하지 않으면 전역 top level에 정의됩니다.
루비의 메서드는 마지막 줄의 표현식을 자동으로 리턴하므로
return 키워드를 생략할 수 있습니다.

인수

가변인수는 파라미터에 * 기호를 사용하여 여러개의 인수를 배열로 받을 수 있도록 합니다.
단, 가변인수는 파라미터의 마지막에 위치해야 합니다.

파라미터의 초기값

메서드 선언시 파라미터의 초기값을 설정할 수 있으며
초기값을 설정한 파라미터는 메서드 호출 시 생략 가능하며
선언된 초기값이 사용됩니다.

profile
versatility (ode
post-custom-banner

0개의 댓글