flutter

현업 FLUTTER 개발 들어가기전 DART언어 파악하기 (함수)

유교주 2024. 2. 16. 15:42
728x90
반응형

1. String sayHello(String name){

return "hello $name!"

} // [타입] [함수명]([인자타입] 인자명) { return @@@}; 혹은 [타입] [함수명]([인자타입] 인자명)=>"@@@"; 한줄반환일때만)

2. Named parameters는 명시적으로 required로 표시되지 않는 한 선택 사항. 기본값을 제공하지 않거나 Named parameters를 필수로 표시하지 않으면 해당 유형은 기본값이 null이 되므로 null을 허용해야함.

String sayHello(

{required String name, required int age, required String country}) {

return "${name} / ${age} / ${country}";

}

void main() {

print(sayHello(name: "sugar", age: 10, country: "Korea"));

}

--------------------------------------------------------------------------------------------------------

Positional parameters

: 함수에 정의되어있는 파라미터 순서대로 들어감.

named Parameters

: 함수에 정의되어 있는 파라미터 순서를 지키지 않아도 됨.

함수에 1. 디폴트값을 지정하거나, 2. Required modifier 를 써서 null 방지 가능

--------------------------------------------------------------------------------------------------------

3.

?? 연산자를 이용하면 왼쪽 값이 null인지 체크해서 null이 아니면 왼쪽 값을 리턴하고 null이면 오른쪽 값을 리턴한다.

String capitalizeName(String? name) {

return name?.toUpperCase() ?? "";

}

??= 연산자를 이용하면 변수 안에 값이 null일 때를 체크해서 값을 할당해줄 수 있다.

void main() {

String? name;

name ??= "sugar";

name = null;

name ??= "js";

print(name); // js

}

4.TypeDef

자료형에 사용자가 원하는 alias를 붙일 수 있게 해준다. (자료형 이름의 별명을 만들 때 사용)

typedef ListOfInts = List;

ListOfInts reverseListOfNumbers(ListOfInts list) {

var reversedList = list.reversed.toList();

return reversedList;

}

728x90
반응형