1. 매개변수
Dart는 객체 지향 프로그래밍 언어로, 함수에 매개변수를 전달하고, 함수에서 값을 반환하는 기능을 제공합니다. 함수에서 매개변수는 함수가 호출될 때 전달되는 값을 받는 변수입니다.
void greet(String name) {
print("Hello, $name!");
}
void main() {
greet("Alice"); // Result: Hello, Alice!
}
여러 개의 매개변수도 정의할 수 있습니다.
void add(int a, int b) {
print("Sum: ${a + b}");
}
void main() {
add(5, 3); // result: 8
}
2. 선택적 매개변수
Dart에서는 선택적 매개변수를 사용할 수 있습니다. 선택적 매개변수는 기본값을 가질 수 있습니다.
- 선택적 위치 매개변수
대괄호 [ ]를 사용하여 정의합니다.
void greet(String name, [String? greeting]) {
greeting ??= 'Hello';
print('$greeting, $name!');
}
void main() {
greet("Alice"); // result: Hello, Alice!
greet("Bob", "Hello"); // result: Hello, Bob!
}
- 선택적 명명 매개변수
중괄호 { }를 사용하여 정의합니다. 이 경우 매개변수에 기본값을 설정할 수 있습니다.
void greet({String name = 'Guest', String greeting = 'Hello'}) {
print('$greeting, $name!');
}
void main() {
greet(); // result: Hello, Guest!
greet(name: "Alice"); // result: Hello, Alice!
greet(name: "Bob", greeting: 'Hi'); // result: Hi, Bob!
}
3. 반환값
함수는 값을 반환할 수 있으며, 반환 타입을 명시해야 합니다. 반환 타입이 없으면 void를 사용합니다.
- 기본 반환값
int add(int a, int b) {
return a + b;
}
void main() {
var sum = add(5, 3);
print('Sum: $sum'); // result: Sum: 8
}
- 여러 반환값
Dart에서는 List나 Map과 같은 컬렉션을 사용하 여러 값을 반환할 수 있습니다.
List<int> calculate(int a, int b) {
return [a + b, a - b];
}
void main() {
var results = calculate(5, 3);
print(
'Sum: ${results[0]}, Difference: ${results[1]}',
); // result: Sum: 8, Difference: 2
}
4. 비동기 함수와 반환값
Dart에서는 비동기 함수도 지원합니다. 비동기 함수는 Future를 반환할 수 있습니다.
Future<String> fetchData() async {
// 비동기 작업 시뮬레이션
await Future.delayed(Duration(seconds: 2));
return 'Data Fetched!';
}
void main() async {
var data = await fetchData();
print(data); // Result: Data fetched!
}
GitHub - Koras02/dart-bloging
Contribute to Koras02/dart-bloging development by creating an account on GitHub.
github.com
LIST
'Mobile > Dart' 카테고리의 다른 글
[Dart] 8장 익명 함수 및 고차 함수 (0) | 2025.03.31 |
---|---|
[Dart] 6장 함수 정의 및 호출 (0) | 2025.03.18 |
[Dart] 5장 반복문 (0) | 2025.03.10 |
[Dart] 4장 조건문 (0) | 2025.03.07 |
[Dart] 3장 연산자 (0) | 2025.03.01 |