Variabel adalah tempat penyimpanan data dalam program. Di Dart, setiap variabel memiliki tipe data yang menentukan jenis nilai yang bisa disimpan.
Ada beberapa cara mendeklarasikan variabel di Dart:
Menggunakan nama tipe secara eksplisit:
int umur = 25;
String nama = 'Budi';
double berat = 68.5;
bool aktif = true;
Menggunakan var — tipe diinfer otomatis:
var umur = 25; // diinfer sebagai int
var nama = 'Budi'; // diinfer sebagai String
var suhu = 36.6; // diinfer sebagai double
var lulus = true; // diinfer sebagai bool
int — Bilangan Bulat
int nilai = 100;
int suhu = -5;
int populasi = 270000000;
double — Bilangan Desimal
double pi = 3.14159;
double berat = 68.5;
double suhu = 36.6;
String — Teks
String nama = 'Budi Santoso';
String pesan = 'Selamat belajar Dart!';
String kosong = '';
bool — Boolean
bool lulus = true;
bool hujan = false;
bool aktif = true;
dynamic — Tipe Dinamis
dynamic data = 42;
data = 'sekarang string'; // tipe bisa diubah
data = true; // bisa diubah lagi
final — nilai ditetapkan sekali, bisa ditentukan saat runtime:
final String nama = 'Budi';
final int tahunLahir = 2000;
// nama = 'Andi'; // ERROR! tidak bisa diubah
final DateTime sekarang = DateTime.now(); // nilai runtime — OK
const — nilai harus diketahui saat compile time:
const double pi = 3.14159;
const int maxNilai = 100;
const String appName = 'MyApp';
// const DateTime sekarang = DateTime.now(); // ERROR!
Perbedaan final vs const:
| Aspek | final | const |
|---|---|---|
| Nilai berubah? | Tidak | Tidak |
| Ditentukan saat | Runtime atau compile time | Compile time saja |
Bisa DateTime.now()? |
Ya | Tidak |
| Performa | Baik | Lebih optimal |
Di Dart modern, variabel tidak boleh null secara default:
String nama = 'Budi';
// nama = null; // ERROR! String tidak boleh null
// Gunakan ? untuk mengizinkan null:
String? namaOpsional; // default: null
int? usia; // default: null
print(namaOpsional); // null
Cara menggunakan variabel nullable dengan aman:
String? nama;
// Cek sebelum digunakan:
if (nama != null) {
print(nama.length);
}
// Atau gunakan null-aware operator:
print(nama?.length); // null jika nama null
print(nama ?? 'Anonim'); // gunakan default jika null
// String ke int
int angka = int.parse('42');
// String ke double
double desimal = double.parse('3.14');
// int ke String
String teks = 42.toString();
// double ke int (membuang desimal)
int bulat = 3.9.toInt(); // hasilnya: 3
// int ke double
double nilai = 42.toDouble(); // hasilnya: 42.0
💡 Tips: Gunakan
varuntuk variabel lokal sederhana, dan tulis tipe secara eksplisit (sepertiint,String) untuk parameter fungsi dan field kelas — ini membuat kode lebih mudah dibaca. Selalu gunakanfinaluntuk variabel yang tidak perlu diubah setelah dideklarasikan! 🧩
Kursus
Dart Dasar
Kategori
Dasar Dart
Durasi Pelajaran
20 menit