Menu
CoddyTech

Keamanan null Dasar

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

Null safety membantu mencegah aplikasi mengalami crash yang tidak terduga dengan mengatur variabel mana yang boleh kosong (null).

Secara default, variabel harus berisi nilai:

void main() {
  String name = 'Dart';
  print(name);  // Menghasilkan: Dart
  
  // Ini akan menimbulkan masalah:
  // name = null;  // Tidak diizinkan
}

Tambahkan ? setelah tipe data agar nilai null diperbolehkan:

void main() {
  String? name = 'Dart';
  print(name);  // output: Dart
  
  // Sekarang kamu bisa memberikan nilai null
  name = null;
  print(name);  // output: null
}

Kamu dapat mendeklarasikan variabel nullable dengan tipe apa pun:

void main() {
  int? age;  // Tanpa nilai awal, nilai default-nya null
  double? price = 19.99;
  bool? isAvailable = true;
  
  print(age);         // Output: null
  print(price);       // Output: 19.99
  print(isAvailable); // Output: true
  
  // Kita bisa mengubah nilai mana pun di antaranya menjadi null
  price = null;
  isAvailable = null;
}

 

Keamanan null membantu melindungi aplikasimu dari crash tak terduga yang terjadi saat kodemu mencoba menggunakan nilai null dalam operasi.

challenge icon

Tantangan

Pemula

Buat program Dart yang menunjukkan dasar null safety menggunakan operator ?:

  1. Deklarasikan variabel String bernama username dan tetapkan nilainya menjadi null menggunakan operator null safety ? (String?)
  2. Deklarasikan variabel int bernama userAge dan tetapkan nilainya menjadi null menggunakan operator null safety
  3. Cetak kedua variabel dengan label dalam format PERSIS berikut:
Username: null
User age: null

Kemudian:

  1. Tetapkan nilai "DartLearner" ke variabel username
  2. Tetapkan nilai 25 ke variabel userAge
  3. Cetak kedua variabel lagi dengan format yang PERSIS sama seperti sebelumnya

Output-mu harus cocok dengan format persis yang ditampilkan di atas.

Coba sendiri

void main() {
  // Deklarasikan variabelmu yang dapat bernilai null di sini
  String? username = ?;
  int? userAge = ?;
  
  // Cetak nilai awal beserta labelnya
  print("Username: " + username.toString());
  print("User age: " + userAge.toString());
  
  // Tetapkan nilai baru ke variabelmu
  username = ?;
  userAge = ?;
  
  // Cetak nilai yang diperbarui dengan label yang sama
  print("Username: " + username.toString());
  print("User age: " + userAge.toString());
}
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