parameters → [데이터형 변수, 데이터형 변수...]

파라메터 정의시 Default value가 없다면, 파라메터의 데이터 타입은 null가질 수 있는 nullable types이어야한다.

 

Dart considers all variables non-nullable. : Compile에서 부터 오류발생

void main() {
  print(YourInfo1('A', 'AA'));
}
String YourInfo1(String name, String nickname, [int age, String job])
{
  return '1. Your name is $name. Your nickname is $nickname. Your age is $age. Your job is $job.';
}

 

default value 지정 : 정상작동

void main() {
  print(YourInfo2('A', 'AA'));
}
String YourInfo2(String name, String nickname, [int age = 10, String job = 'BBB'])
{
  return '2. Your name is $name. Your nickname is $nickname. Your age is $age. Your job is $job.';
}
2. Your name is A. Your nickname is AA. Your age is 10. Your job is BBB.

 

nullable types 지정 : 정상작동

void main() {
  print(YourInfo3('A', 'AA', 27));
}
String YourInfo3(String name, String nickname, [int? age = 10, String? job])
{
  return '3. Your name is $name. Your nickname is $nickname. Your age is $age. Your job is $job.';
}
3. Your name is A. Your nickname is AA. Your age is 27. Your job is null.

 

 

https://dart.dev/language/functions#optional-positional-parameters