프로그래밍 공부 메모/flutter
function 함수 (optional parameter / named parameter)
jjs815
2022. 5. 15. 21:01
- 배열의 값을 더하는 일반적인 함수 선언
void main(){
List testList = [1,2,3,4];
int result = addList(testList);
print(result);
}
int addList(List testList){
int total = 0;
for(int number in testList){
total += number;
}
return total;
}
- 매개변수를 여러 개 쓰고 싶을 때
void main(){
List testList = [1,2,3,4];
int result = addList(testList,1 ,2);
print(result);
}
int addList(List testList, int a, int b){
int total = 0;
for(int number in testList){
total += number;
}
return total;
}
함수 선언 시 매개변수를 여러 개 넣고 싶을 때 사용되는 함수의 매개변수와도 자리가 같아야 한다
- optional parameter [ ]
파라미터를 넣어도 안 넣어도 상관없는 함수
void main(){
List testList = [1,2,3,4];
int result = addList(testList,1 );
print(result);
}
int addList(List testList, int a, [int? b ]){ //[] optional parameter
print('b 값은 : ${b}');
int total = 0;
for(int number in testList){
total += number;
}
return total;
}
null safety 때문에 [ int b] 로 바로 쓸 수없고 default 값이나 nullable 허용해줘야 한다
nullable : [ int b ] -> [ int? b ]
defult 값 선언 : [ int b = 0] 해당 변수에 값이 null이면 디폴트 값으로 대처한다
- named parameter { }
optional parameter와 같이 파라미터를 넣어도 안 넣어도 된다
그리고 함수의 파라미터가 많을 때 순서를 지켜 값을 대입하기 힘들 수 있다 named parameter는 순서와 꼭 맞출 필요가없다
void main(){
List testList = [1,2,3,4];
int result = addList(testList,1, b : 2, d : 4);
print(result);
}
int addList(List testList, int a, {int? b, int? c, int? d, int? e}){
int total = 0;
for(int number in testList){
total += number;
}
return total;
}
반응형