Menu
CoddyTech

Parameter Posisi Opsional

Termasuk bagian Dasar-Dasar dalam perjalanan Dart di Coddy. Pelajaran 72 dari 94.

Parameter posisional opsional di Dart memungkinkan kamu membuat fungsi dengan beberapa parameter opsional. Kamu mendefinisikannya dengan menempatkan parameter di dalam tanda kurung siku [].

Buat fungsi dengan parameter posisional opsional:

void greet(String name, [String? greeting]) {
  if (greeting != null) {
    print('$greeting, $name!');
  } else {
    print('Hello, $name!');
  }
}

void main() {
  greet('Dart');
  greet('Dart', 'Welcome');
}

Setelah menjalankan kode di atas, outputnya adalah:

Hello, Dart!
Welcome, Dart!

Kamu bisa memiliki beberapa parameter opsional:

int calculateTotal(int quantity, [int price = 10, int tax = 2]) {
  return quantity * price + tax;
}

void main() {
  print(calculateTotal(5));
  print(calculateTotal(5, 20));
  print(calculateTotal(5, 20, 5));
}

Setelah menjalankan kode di atas, outputnya adalah:

52
102
105
challenge icon

Tantangan

Pemula

Dalam tantangan ini, kamu akan berlatih menggunakan parameter posisi opsional dalam fungsi Dart. Parameter posisi opsional memungkinkan kamu membuat fungsi dengan beberapa parameter opsional.

Lengkapi fungsi greet di bawah ini. Fungsi tersebut menerima parameter nama wajib dan parameter title opsional. Jika title diberikan, fungsi harus mengembalikan sapaan dengan title dan nama. Jika title tidak diberikan, fungsi cukup menggunakan nama.

Output yang diharapkan:

Hello, John!
Hello, Dr. Smith!

Coba sendiri

void main() {
  // Variabel-variabel ini sudah didefinisikan untukmu
  String person1 = "John";
  String person2 = "Smith";
  String title = "Dr.";
  
  // Panggil fungsi greet hanya dengan nama
  print(greet(person1));
  
  // Panggil fungsi greet dengan nama dan title
  print(greet(person2, title));
}

// TODO: Lengkapi fungsi greet dengan parameter title yang opsional
// Parameter title harus opsional (gunakan tanda kurung siku [])
String greet(String name) {
  // Jika title diberikan, kembalikan "Hello, {title} {name}!"
  // Jika title tidak diberikan, kembalikan "Hello, {name}!"
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler Dart online