Dart
파라미터 초기값 설정하기
파라미터 초기값 설정하기
함수에서 파라미터에 초기값을 설정할 수 있습니다.
즉 해당 파라미터에 값을 전달하지 않은 경우에 해당 초기값이 적용됩니다.
2개의 파라미터중 하나는 필수, 이때 초기값을 설정하려는 파라미터에는 {}로 감싸줍니다.
int plus(int n, {int n2 = 0}){ int result = n + n2; return result; } //함수호출 print(plus(10));
위의 코드에서 보면 파라미터 n2는 {}로 감싸서 선택적으로 값을 적용할 수 있고 안할 수 있는 파라미터로 만들었습니다.
이를 선택적 파라미터라고 합니다. 그러므로 아규먼트값은 하나 뿐입니다.
그럼 실행 해 봅시다.
void main() { int plus(int n, {int n2 = 0}){ int result = n + n2; return result; } print(plus(10)); }
오류가 없이 잘 실행됩니다.
결과는 바로 아래에서 확인할 수 있습니다.
두번째 아규먼트를 적용하지 않았지만 초기값이 적용되어 계산결과가 나타납니다.
두번째 아규먼트 값을 적용하면 해당 값이 적용됩니다.
단 이때 선택적 아규먼트는 파라미터명을 명시합니다. 다음과 같이요.
void main() { int plus(int n, {int n2 = 0}){ int result = n + n2; return result; } print(plus(10, n2: 121)); }
오류가 없이 잘 실행됩니다.
결과는 바로 아래에서 확인할 수 있습니다.
같은 방식으로 여러개의 선택적 파라미터를 적용할 수 있습니다.
선택적 파라미터는 어떤 아규먼트는 값을 적용할수도 있고 안할수도 있기 때문에 순서가 아닌 위와 같이 변수명을 지정해서 값을 전달합니다.
이것을 이름있는 선택적 매개변수라고합니다.
그럼 여러개의 이름있는 선택적 매개변수를 테스트 해봅시다.
void main() { int plus(int n, {int n2 = 0, int n3 = 100, int n4 = 1}){ int result = n + n2 + n3 + n4; return result; } print(plus(10, n2: 121, n4: 2)); }
결과는 바로 아래에서 확인할 수 있습니다.
n3 값은 없지만 초기값으로 100을 적용해서 10 + 121 + 100 + 2 이 계산되어 233이 됩니다.
//=$langList['bottomThankyou'][$langMode]?>