기술해록본

다트문법 (3) 본문

Develop/Flutter

다트문법 (3)

HaeYoung_12 2024. 8. 13. 09:57

함수와 람다

1. 함수

1) 함수의 일반적 특징


한번만 작성하고 여러곳에서 재활용할수 있음

int addTwoNumbers(int a, int b){
}

void main(){

print(addTwoNumbers(1,3));

}

2) 매개변수를 지정하는 방법

1. Positional Parameter: 순서가 고정된,
2. Named Parameter: 이름이 있는 매개변수 required 키워드 사용

int addTwoNumbersWithNamedParameter({
  required int a, //NamedParameter 사용 방법
  required int b,
}){return a+b;
}


void main(){
print(addTwoNumbersWithNamedParameter(a: 2, b: 2));
}
 

기본값을 갖는 포지셔널 파라미터 : [ ]기호를 사용

//기본값을 갖는 포지셔널 파라미터 -> []기호를 사용
int addTwoNumbersWithDefaultParameter(int a, [int b=2]){
  return a+b;
}

void main(){
//기본값을 갖는 포지셔널 파라미터 -> []기호를 사용
print(addTwoNumbersWithDefaultParameter(8));
}

 

네임드 파라미터에 기본값 적용시 : required 키워드 생략하고 등호 다음에 원하는 기본값 입력하기

int addTwoNumbersWithNamedandDefault({
  required int a,
  int b=2,
}){
  return a+b;
}

int addTwoNumbersWithNamedandPositional(
    int a,{
  required int b,
  int c=2,
}){
  return a+b+c;
}

void main(){
//  네임드 파라미터에 기본값 적용시
print(addTwoNumbersWithNamedandDefault(a: 7));

//포지션 파라미터와 네임드 파라터를 섞어쓸때는 포지션이 네임드 파라미터보다 앞에 와야함.
print(addTwoNumbersWithNamedandPositional(4, b: 8));

}

 

⚠️ 포지션 파라미터와 네임드 파라미터를 섞어쓸때는 포지션이 네임드보다 앞에 와야함.

int addTwoNumbersWithNamedandPositional(
    int a,{
  required int b,
  int c=2,
}){
  return a+b+c;
}

void main(){

//포지션 파라미터와 네임드 파라터를 섞어쓸때는 포지션이 네임드 파라미터보다 앞에 와야함.
print(addTwoNumbersWithNamedandPositional(4, b: 8));

}

2. 람다

1) 익명함수와 람다 함수

둘다 함수 이름이 없고 일회성으로 사용됨

익명함수 (매개변수){함수바디}

람다함수 (매개변수)=>{함수바디}

 

import 'dart:io';

void main()
{
   List<int> numbers=[1,2,3,4,5];
   
   //일반함수로 모든값 더하기
  final allNumbers=numbers.reduce((v,e){return v+e; });
  print(allNumbers);

  //람다함수로 모든값 더하기
  final allNumberswithlamda=numbers.reduce((v,e)=>v+e);
  print(allNumberswithlamda);

}

'Develop > Flutter' 카테고리의 다른 글

Chapter 13 : Project 오늘도 출첵  (0) 2024.08.13
다트 객체지향 프로그램  (0) 2024.08.13
다트 함수 (4)  (0) 2024.08.13
다트 문법 정리 (2)  (0) 2024.08.06
다트 문법 정리 (1)  (0) 2024.08.03