Masukkan Password
07 1.6 Assignment Operators in Dart Programming Language | Learn Dart Language | Dart Course
Materi kali ini membahas Assignment Operators dalam Dart. Ini adalah konsep yang sangat penting karena hampir setiap program akan menggunakan assignment untuk menyimpan atau mengubah nilai variabel.
Kalau materi sebelumnya membahas:
+,-,*,/,%β melakukan perhitungan++,--β menaikkan/menurunkan nilai 1
Maka sekarang kita belajar operator yang digunakan untuk memberikan dan memperbarui nilai variabel.
Catatan kecil: caption beberapa kali menulis βDOT/do programming languageβ. Yang dimaksud adalah Dart programming language.
1. Apa itu Assignment Operator?
Assignment operator adalah operator yang digunakan untuk memberikan nilai kepada sebuah variabel.
Operator assignment yang paling dasar adalah:
=
Contoh:
int age = 20;
Artinya:
Simpan nilai
20ke dalam variabelage.
Jadi:
age
β
ββββββ
β 20 β
ββββββ
2. Jangan Salah Memahami =
Ini sangat penting.
Dalam matematika, kita sering membaca:
x = 10
sebagai:
“x sama dengan 10.”
Dalam pemrograman, untuk assignment lebih tepat dibaca:
“Masukkan/simpan nilai 10 ke dalam x.”
Contoh:
int a = 10;
Artinya:
Buat variabel
abertipeint, lalu simpan nilai10di dalamnya.
3. Assignment Bukan Hanya Saat Membuat Variabel
Assignment juga bisa digunakan untuk mengubah nilai variabel yang sudah ada.
Contoh:
int a = 10;
a = 100;
print(a);
Hasil:
100
Awalnya:
a = 10
Kemudian:
a = 100;
Nilai lama diganti:
a = 100
Jadi = dapat digunakan untuk:
- memberikan nilai awal
- mengganti nilai yang sudah ada
4. Analogi Sederhana
Bayangkan variabel adalah kotak.
ββββββββββββ
β a β
β 10 β
ββββββββββββ
Kemudian kita menulis:
a = 100;
Maka isi kotaknya berubah:
ββββββββββββ
β a β
β 100 β
ββββββββββββ
Jadi operator = bisa dianggap sebagai:
“Masukkan nilai ini ke dalam variabel tersebut.”
5. Daftar Assignment Operators
Pada materi ini ada beberapa operator:
| Operator | Nama | Contoh |
|---|---|---|
= | Assignment | a = 10 |
+= | Add and assign | a += 5 |
-= | Subtract and assign | a -= 5 |
*= | Multiply and assign | a *= 5 |
/= | Divide and assign | a /= 5 |
Ada juga operator assignment lain di Dart, tetapi untuk materi ini kita fokus pada yang ada di video.
6. Operator =
Kita mulai dari yang paling sederhana.
int a = 10;
Artinya:
a β 10
Kemudian:
a = 100;
Artinya:
a β 100
Nilai sebelumnya:
10
digantikan dengan:
100
Contoh lengkap:
void main() {
int a = 10;
print(a);
a = 100;
print(a);
}
Output:
10
100
7. Operator +=
Sekarang kita masuk ke operator yang lebih menarik:
+=
Operator ini berarti:
Tambahkan nilai ke variabel, lalu simpan hasilnya kembali ke variabel tersebut.
Misalnya:
int a = 10;
a += 100;
Hasil akhirnya:
a = 110
Karena:
10 + 100 = 110
8. += adalah Bentuk Singkat
Ini konsep yang sangat penting.
Kode:
a += 100;
merupakan bentuk singkat dari:
a = a + 100;
Keduanya memiliki efek yang sama.
Jadi:
a += 100;
bisa dibaca:
Ambil nilai
a, tambahkan100, kemudian simpan kembali kea.
9. Contoh += Langkah demi Langkah
Misalnya:
int a = 10;
a += 100;
Awalnya:
a = 10
Kemudian:
a + 100
menjadi:
10 + 100 = 110
Hasilnya disimpan kembali:
a = 110
10. Perbedaan = dan +=
Ini juga sangat penting.
Misalnya:
int a = 10;
a = 100;
Hasil:
a = 100
Karena = mengganti nilai lama.
Tetapi:
int a = 10;
a += 100;
Hasil:
a = 110
Karena += menambahkan nilai ke nilai yang sudah ada.
Bandingkan:
a = 100
dengan:
a += 100
Yang pertama:
10 β 100
Yang kedua:
10 β 110
11. Contoh dalam Kehidupan Nyata
Misalnya saldo kamu:
int balance = 100000;
Kemudian kamu mendapatkan uang:
balance += 50000;
Sekarang:
balance = 150000
Kenapa?
100000 + 50000 = 150000
Ini sangat masuk akal untuk kasus seperti:
- saldo
- jumlah poin
- jumlah barang
- total harga
- skor game
12. Operator -=
Sekarang kebalikan dari +=.
Operator:
-=
berarti:
Kurangi nilai variabel, kemudian simpan hasilnya kembali.
Misalnya:
int b = 20;
b -= 5;
Hasil:
b = 15
Karena:
20 - 5 = 15
13. -= adalah Bentuk Singkat
Kode:
b -= 5;
sama dengan:
b = b - 5;
Jadi:
b -= 5
bisa dibaca:
Ambil nilai
b, kurangi 5, lalu simpan kembali keb.
14. Contoh Saldo dengan -=
Misalnya:
int balance = 100000;
Kamu belanja:
balance -= 25000;
Maka:
100000 - 25000 = 75000
Sekarang:
balance = 75000
Jadi operator -= cocok digunakan ketika nilai berkurang.
15. Operator *=
Selanjutnya:
*=
Artinya:
Kalikan nilai variabel dengan suatu angka, kemudian simpan kembali hasilnya.
Contoh:
int c = 30;
c *= 2;
Hasil:
c = 60
Karena:
30 Γ 2 = 60
16. *= adalah Bentuk Singkat
Kode:
c *= 2;
sama dengan:
c = c * 2;
Urutannya:
c = 30
β
30 Γ 2
β
60
β
c = 60
17. Contoh *= dalam Kehidupan Nyata
Misalnya kita mempunyai jumlah barang:
int quantity = 5;
Kemudian jumlahnya menjadi dua kali lipat:
quantity *= 2;
Sekarang:
quantity = 10
Karena:
5 Γ 2 = 10
18. Operator /=
Sekarang:
/=
berarti:
Bagi nilai variabel, lalu simpan hasil pembagiannya kembali ke variabel.
Contoh:
double d = 50.5;
d /= 5;
Hasil:
d = 10.1
Karena:
50.5 Γ· 5 = 10.1
19. /= adalah Bentuk Singkat
Kode:
d /= 5;
sama dengan:
d = d / 5;
Jadi:
d = 50.5
β
50.5 / 5
β
10.1
β
d = 10.1
20. Kenapa di Video int Menimbulkan Error pada /=?
Ini bagian yang penting dan berkaitan dengan materi sebelumnya.
Misalnya:
int d = 50;
d /= 5;
Masalahnya adalah operasi / menghasilkan nilai bertipe double.
Secara konsep:
50 / 5 = 10.0
Jadi hasil / adalah double.
Sementara d bertipe:
int
Maka ada masalah ketika hasil operasi pembagian tersebut harus dimasukkan kembali ke int.
21. Gunakan double untuk /=
Karena / menghasilkan double, kita bisa menggunakan:
double d = 50.5;
d /= 5;
Hasil:
10.1
Contoh lengkap:
void main() {
double d = 50.5;
d /= 5;
print(d);
}
Output:
10.1
22. Jangan Bingung antara /= dan ~/=
Dalam materi ini yang digunakan adalah:
/=
Ini melakukan pembagian biasa.
Sedangkan Dart juga memiliki operator:
~/=
yang berkaitan dengan integer division.
Untuk sekarang, cukup ingat:
/= β bagi
Dan dari materi sebelumnya:
/ β pembagian biasa
~/ β integer division
23. Semua Assignment Operator dalam Satu Contoh
Sekarang kita gabungkan:
void main() {
int a = 10;
a = 100;
print(a);
a += 10;
print(a);
a -= 20;
print(a);
a *= 2;
print(a);
a ~/= 5;
print(a);
}
Perhatikan bahwa saya menggunakan ~/= pada bagian terakhir supaya hasil tetap integer.
Urutannya:
a = 10
Kemudian:
a = 100
jadi:
100
Kemudian:
a += 10
menjadi:
110
Kemudian:
a -= 20
menjadi:
90
Kemudian:
a *= 2
menjadi:
180
Kemudian:
a ~/= 5
menjadi:
36
24. Bentuk Panjang vs Bentuk Singkat
Ini bagian yang wajib kamu kuasai.
| Bentuk singkat | Bentuk panjang |
|---|---|
a += 5 | a = a + 5 |
a -= 5 | a = a - 5 |
a *= 5 | a = a * 5 |
a /= 5 | a = a / 5 |
Jadi pola umumnya:
variabel operator= nilai
berarti:
variabel = variabel operator nilai
25. Cara Membaca Assignment Operator
Misalnya kamu melihat:
score += 10;
Bacalah:
“Tambahkan 10 ke
score.”
Bukan:
“
scoresama dengan 10.”
Kalau:
score -= 10;
baca:
“Kurangi
scoresebesar 10.”
Kalau:
score *= 2;
baca:
“Kalikan
scoredengan 2.”
Kalau:
score /= 2;
baca:
“Bagi
scoredengan 2.”
26. Perbandingan dengan Increment/Decrement
Materi sebelumnya membahas:
a++;
Ini sama konsepnya dengan:
a += 1;
Dan:
a--;
sama konsepnya dengan:
a -= 1;
Jadi:
a++ β a = a + 1
a-- β a = a - 1
Sedangkan assignment operator memungkinkan kita menggunakan angka selain 1:
a += 10
a -= 5
a *= 3
a /= 2
27. Contoh Gabungan dengan Increment
Misalnya:
int score = 100;
score += 50;
score++;
score -= 20;
Mari kita hitung.
Awalnya:
score = 100
Setelah:
score += 50;
menjadi:
150
Setelah:
score++;
menjadi:
151
Setelah:
score -= 20;
menjadi:
131
Jadi:
100
β +50
150
β +1
151
β -20
131
28. Contoh Kasus Belanja
Ini contoh yang bagus untuk memahami semuanya.
void main() {
double total = 100000;
total += 50000; // Tambah biaya lain
total -= 10000; // Diskon
total *= 2; // Misalnya membeli 2 paket
total /= 2; // Membagi total menjadi 2 bagian
print(total);
}
Konsepnya:
100000
+ 50000
= 150000
150000
- 10000
= 140000
140000
Γ 2
= 280000
280000
Γ· 2
= 140000
Assignment operator memungkinkan kita memperbarui nilai variabel secara bertahap.
29. Hal yang Sangat Penting: Assignment Mengubah Variabel
Misalnya:
int score = 50;
score += 10;
Setelah baris tersebut:
score = 60
Jadi assignment operator biasanya bersifat:
“Hitung sesuatu β simpan hasilnya kembali ke variabel.”
Misalnya:
score += 10;
secara konsep:
ambil score
β
score + 10
β
hasil
β
simpan kembali ke score
30. Jangan Tertukar dengan Comparison Operator
Ini juga penting untuk pembelajaran berikutnya.
Operator:
=
adalah assignment.
Contoh:
int age = 20;
Artinya memberikan nilai.
Sedangkan nanti kita akan belajar:
==
yang merupakan comparison/equality operator.
Contoh:
age == 20
Artinya:
“Apakah
agesama dengan20?”
Jadi:
= β assignment
== β comparison
Jangan sampai tertukar.
31. Analogi Kotak
Supaya lebih mudah, bayangkan variabel sebagai kotak.
Misalnya:
a = 10
Kotaknya:
βββββββββ
β 10 β
βββββββββ
a = 100
Buang nilai lama dan masukkan nilai baru:
βββββββββ
β 100 β
βββββββββ
a += 5
Ambil nilai lama:
10 + 5
hasilnya:
15
Kemudian simpan:
βββββββββ
β 15 β
βββββββββ
a *= 2
Ambil nilai:
15 Γ 2 = 30
Kemudian:
βββββββββ
β 30 β
βββββββββ
Jadi assignment operator sangat mudah dipahami kalau kita membayangkan nilai di dalam kotak sedang diperbarui.
32. Cheat Sheet
Hafalkan pola ini:
= β ganti/simpan nilai
+= β tambah lalu simpan
-= β kurang lalu simpan
*= β kali lalu simpan
/= β bagi lalu simpan
Bentuk panjangnya:
a += 5 β a = a + 5
a -= 5 β a = a - 5
a *= 5 β a = a * 5
a /= 5 β a = a / 5
Dan hubungannya dengan materi sebelumnya:
a++ β a += 1
a-- β a -= 1
33. Latihan Pemahaman
Coba hitung secara manual.
Soal 1
int a = 10;
a += 5;
Hasil:
a = 15
Soal 2
int a = 10;
a -= 3;
Hasil:
a = 7
Soal 3
int a = 10;
a *= 4;
Hasil:
a = 40
Soal 4
double a = 20;
a /= 4;
Hasil:
a = 5.0
Soal 5 β Gabungan
int a = 10;
a += 5;
a *= 2;
a -= 10;
Langkahnya:
a = 10
10 + 5 = 15
15 Γ 2 = 30
30 - 10 = 20
Jadi:
a = 20
π§ Kesimpulan
Assignment operator digunakan untuk memberikan nilai atau memperbarui nilai sebuah variabel.
Operator dasarnya:
=
Contoh:
int age = 20;
Kemudian ada versi singkat untuk melakukan operasi sekaligus assignment:
+=
-=
*=
/=
Misalnya:
int number = 10;
number += 5;
Sama artinya dengan:
number = number + 5;
Hasil:
15
Jadi pola besarnya adalah:
ASSIGNMENT
β
βββββββββββ΄ββββββββββ
β β
= operator=
β β
ganti nilai operasi + simpan
β
βββββββββββΌββββββββββ
β β β
+= -= *= /=
β β β β
tambah kurang kali bagi
+ simpan + simpan + simpan + simpan
Kalimat yang paling penting untuk diingat:
=mengganti nilai, sedangkan+=,-=,*=, dan/=melakukan operasi terhadap nilai lama lalu menyimpan hasilnya kembali ke variabel.
Kalau konsep ini sudah kamu pahami, kamu sudah punya fondasi yang bagus untuk masuk ke materi berikutnya seperti comparison operators (>, <, ==, !=) dan kemudian logical operators (&&, ||, !).