Growth-Collectors / effective-java

repository for effective java study
3 stars 2 forks source link

아이템 53. 가변인수는 신중히 사용하라 #53

Open HanaHww2 opened 1 year ago

YunDaHyee commented 1 year ago

가변인수의에 대해 정리할 수 있어서 좋았습니다

YunDaHyee commented 1 year ago


가변인수(varargs) 메서드

: 명시한 타입의 인수를 0개 이상 받을 수 있는 메서드

특징

  • 호출 시, 인수의 개수와 길이가 같은 배열을 만들고 여기에 인수들을 저장해서 가변인수 메서드에다가 전달해주는 방식
  • 인수 개수가 정해져있지 않을 때 유용
  • 최소 개수의 인수를 설정해줄 때는
    필요한 개수만큼의 평범한 매개변수로 받고 마지막 인수로는 가변인수로 받는 게 효율적이다.
    ex) static int min(int firstArg, int... remainingArgs){..}
  • 그렇지 않을 경우,
  • 최소 개수보다 작은 개수의 인수를 넣어서 호출하면 컴파일 타임이 아닌 런타임에 실패하게 됨
  • 가독성이 떨어지는 코드
  • 인수의 유효성 검사를 명시적으로 해야함



jioome commented 1 year ago

가변인수 사용할 때 유의점을 알게 되서 좋았습니다