Dart menyediakan dua tipe data utama untuk angka: int untuk bilangan bulat dan double untuk bilangan desimal. Sedangkan bool menyimpan nilai benar atau salah.
int nilai = 100;
int suhu = -5;
int populasi = 270000000;
int hex = 0xFF; // heksadesimal (= 255)
Operasi dasar dengan int:
int a = 10;
int b = 3;
print(a + b); // 13 — penjumlahan
print(a - b); // 7 — pengurangan
print(a * b); // 30 — perkalian
print(a ~/ b); // 3 — pembagian bulat (integer division)
print(a % b); // 1 — sisa bagi (modulo)
double pi = 3.14159;
double suhu = 36.6;
double berat = -2.5;
double eksponen = 1.5e3; // = 1500.0
Operasi dengan double:
double x = 10.0;
double y = 3.0;
print(x + y); // 13.0
print(x - y); // 7.0
print(x * y); // 30.0
print(x / y); // 3.3333... (pembagian biasa — hasilnya double)
// int ke double
int bilBulat = 5;
double bilDesimal = bilBulat.toDouble(); // 5.0
// double ke int (bagian desimal dibuang)
double d = 9.99;
int i = d.toInt(); // 9 (bukan 10!)
int rounded = d.round(); // 10 (pembulatan normal)
int ceil = d.ceil(); // 10 (pembulatan ke atas)
int floor = d.floor(); // 9 (pembulatan ke bawah)
import 'dart:math';
// Nilai absolut
print((-5).abs()); // 5
// Pangkat
print(pow(2, 8)); // 256.0
// Akar kuadrat
print(sqrt(16)); // 4.0
// Min dan Max
print(min(3, 7)); // 3
print(max(3, 7)); // 7
// Pembulatan
print(3.7.round()); // 4
print(3.2.floor()); // 3
print(3.2.ceil()); // 4
Tipe bool hanya memiliki dua nilai: true atau false:
bool lulus = true;
bool hujan = false;
bool aktif = true;
// Hasil dari perbandingan selalu bool
bool lebihBesar = 10 > 5; // true
bool sama = 'Dart' == 'dart'; // false (case sensitive)
Operasi logika dengan bool:
bool a = true;
bool b = false;
print(a && b); // false — AND: keduanya harus true
print(a || b); // true — OR: salah satu cukup true
print(!a); // false — NOT: membalik nilai
print(!b); // true
void main() {
double harga = 150000;
int jumlah = 3;
double diskon = 0.10; // 10%
double subtotal = harga * jumlah;
double potongan = subtotal * diskon;
double total = subtotal - potongan;
print('Subtotal: Rp${subtotal.toStringAsFixed(0)}');
print('Diskon : Rp${potongan.toStringAsFixed(0)}');
print('Total : Rp${total.toStringAsFixed(0)}');
}
Output:
Subtotal: Rp450000
Diskon : Rp45000
Total : Rp405000
💡 Tips: Gunakan
intuntuk bilangan yang tidak perlu desimal (jumlah barang, usia, indeks). Gunakandoubleuntuk nilai yang butuh presisi desimal (harga, suhu, koordinat). Gunakan.toStringAsFixed(2)untuk memformat angka desimal dengan jumlah digit tertentu saat menampilkan ke pengguna. 💰
Kursus
Dart Dasar
Kategori
Tipe Data & Operator
Durasi Pelajaran
20 menit