[Dart] ํจ์ ํ๋ผ๋ฏธํฐ ๊ธฐ๋ณธ๊ฐ ์ง์ (Default Parameters)
Dart ์ธ์ด์์ ํจ์์ ๋งค๊ฐ๋ณ์์ ๊ธฐ๋ณธ๊ฐ์ ์ค์ ํด์ ํจ์ ํธ์ถ ์ ํน์ ๋งค๊ฐ๋ณ์๋ฅผ ์๋ตํ ์ ์๋ค.
1. ๊ธฐ๋ณธ๊ฐ ์ง์ ํ๋ ๋ฐฉ๋ฒ
๊ธฐ๋ณธ๊ฐ์ ์ค์ ํ๋ ค๋ฉด ์ค๊ดํธ '{}'๋ก ๊ฐ์ผ ์ด๋ฆ ๊ธฐ๋ฐ ์ ํ์ ๋งค๊ฐ๋ณ์ ๋๋ ๋๊ดํธ'[]'๋ก ๊ฐ์ผ ์์น ๊ธฐ๋ฐ ์ ํ์ ๋งค๊ฐ๋ณ์ ์ค ์ ํํด์ ์ฌ์ฉํ์ฌ ์ค์ ํ ์ ์๋ค.
๊ธฐ๋ณธ๊ฐ์ ์ง์ ํ๋ ค๋ ํ๋ผ๋ฏธํฐ๋ฅผ ์ค๊ดํธ ๋๋ ๋๊ดํธ๋ก ๊ฐ์ธ์ ๊ฐ์ ํ ๋นํ๋ฉด ๋๋ค.
๊ทธ๋์ ํธ์ถ ์ ์๋ต๋ ๋งค๊ฐ๋ณ์๋ ์ค์ ๋ ๊ธฐ๋ณธ๊ฐ์ ์ฌ์ฉํ๊ฒ ๋๋ค.
void ํจ์์ด๋ฆ(ํ์
๋งค๊ฐ๋ณ์์ด๋ฆ, {ํ์
๋งค๊ฐ๋ณ์์ด๋ฆ = ๊ธฐ๋ณธ๊ฐ}) {
// ํจ์ ๋ณธ๋ฌธ
}
void greet(String name, {String greeting = "Hello"}) {
print("$greeting, $name!");
}
void main() {
greet("ํ๊ธธ๋"); // ์ถ๋ ฅ: Hello, ํ๊ธธ๋!
greet("์ํฌ", greeting: "Hi"); // ์ถ๋ ฅ: Hi, ์ํฌ!
}
2. ์ด๋ฆ ๊ธฐ๋ฐ ์ ํ์ ๋งค๊ฐ๋ณ์
- ์ค๊ดํธ '{}' ๋ฅผ ์ฌ์ฉํ์ฌ ๋งค๊ฐ๋ณ์๋ฅผ ๊ฐ์ธ์ ๊ธฐ๋ณธ๊ฐ์ ํ ๋นํ๋ค.
- ๋งค๊ฐ๋ณ์ ์ด๋ฆ์ ๋ช
์์ ์ผ๋ก ์ง์ ํด์ผ ํธ์ถ์ด ๊ฐ๋ฅํ๋ค.
void greet(String name, {String greeting = "Hello"}) {
print("$greeting, $name!");
}
void main() {
greet("ํ๊ธธ๋"); // ์ถ๋ ฅ: Hello, ํ๊ธธ๋!
greet("์ํฌ", greeting: "Hi"); // ์ถ๋ ฅ: Hi, ์ํฌ!
}
3. ์์น ๊ธฐ๋ฐ ์ ํ์ ๋งค๊ฐ๋ณ์
- ๋๊ดํธ'[]'๋ก ๋งค๊ฐ๋ณ์๋ฅผ ๊ฐ์ธ์ ๊ธฐ๋ณธ๊ฐ์ ํ ๋นํ๋ค.
- ๋งค๊ฐ๋ณ์ ์ด๋ฆ์ ์๋ตํ๊ณ ์์์ ๋ฐ๋ผ ๊ฐ์ ์ ๋ฌํ๋ค.
void greet(String name, [String greeting = "Hello"]) {
print("$greeting, $name!");
}
void main() {
greet("ํ๊ธธ๋"); // ์ถ๋ ฅ: Hello, ํ๊ธธ๋!
greet("์ํฌ", "Hi"); // ์ถ๋ ฅ: Hi, ์ํฌ!
}