티스토리 뷰

Ruby & Rails

Ruby 처음 배우기 : 메서드

조묵헌 2018. 5. 10. 17:40

메서드

메서드는 def 키워드를 이용하여 정의하며, class와 module에 정의하지 않으면 전역 top level에 정의됩니다.

루비의 메서드는 마지막 줄의 표현식을 자동으로 리턴하므로 return 키워드를 생략할 수 있습니다.

# 메서드 정의
def method_name(param)
  # code
end

# 메서드 호출
리시버.method_name(args)

# 예시
def hello(param)
  puts "hello " + param
end

hello("world!")


# Method with return
def double(n)
  return n * 2
end

output = double(6)
puts output
# ==> 12

인수 (Parameter)

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

def calculator(operator, *nums)
  total = 0
  if (operator == "add")
    nums.each { |num| total += num }
  end
  total
end

calculator("add", 10, 2, 3, 5)
#=> 20



def alphabetize(arr, rev=false)
end

파라미터의 초기값

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

# default parameters
def add_values(a, b=1)
  a + b
end

add_values(2)  #=> 3

'Ruby & Rails' 카테고리의 다른 글

Ruby 처음 배우기 : Class  (0) 2018.05.11
Ruby 처음 배우기 : Block & Yield  (0) 2018.05.10
Ruby 처음 배우기 : 반복문  (1) 2018.05.10
Ruby 처음 배우기 : 조건문  (0) 2018.05.10
Ruby 처음 배우기 : Hash, Symbol  (0) 2018.05.10
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
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
글 보관함