Repository ini berisi kumpulan program Java untuk pembelajaran bertahap dari konsep dasar hingga kompleks. Setiap folder merepresentasikan topik pembelajaran berbeda dengan berbagai contoh dan latihan.
Pengenalan dasar Java dengan program pertama.
- helloWorld.java: Program dasar "Hello World" untuk memahami struktur program Java
Mempelajari kondisi dan operator logika.
- Conditions/: Implementasi berbagai kondisi (if, if-else)
Condition1.java,Condition2.java,Conditions.java
- logicalOperators/: Operator logika (AND, OR, NOT)
logicalOperators.java,logicalOperators1.javalogicalOperatorExercise.java+ file markdown latihan
Operator lanjutan dan logika kompleks.
- assign-operators/: Assignment operators (=, +=, -=, dll)
- comp-operators/: Comparison operators (<, >, ==, !=)
- or-operators/: Operator OR (||)
- not-operators/: Operator NOT (!)
- TernaryOperators/: Ternary operator (? :)
- Berbagai contoh dan latihan ternary operator
- cek-score/: Program pengecekan skor
- challenge-operators/: 4 Challenge untuk menguji pemahaman operator
Pemahaman mendalam tentang ekspresi, statement, dan metode.
- expression/: Ekspresi Java dan penggunaan white space
expertState.java,expertState1.java,WhiteSpace.java
- if-else-condition/: Kondisi if-else dasar
- ladder-if-else/: If-else bertingkat (ladder)
- nested-if-else/: Nested if-else dengan latihan
- File latihan:
nestedExercise.java,nestedExircise.md
- File latihan:
Pembelajaran tentang metode, parameter, dan overloading.
Metode Dasar:
methodExample.java,methodExample1.java,methodExample2.javamyMethodClass.java,paraMethodClass.javamethodPractice.java
Latihan Metode:
areaParameter.java- Menghitung luas dengan parameterdistanceConversion.java- Konversi jaraktemperatureConvert.java- Konversi suhuleapYear.java- Cek tahun kabisatpositionCalculation.java- Kalkulasi posisimethodExercise.java,methodExercise2.java+ file markdown
Method Overloading:
Folder methods_overloading/ berisi:
Calculate.java- Kalkulasi dengan overloadingAge.java- Perhitungan umurPerson.java,Car.java- OOP dengan overloadingshapes.java- Bentuk geometriconcatinationStrings.java- Manipulasi stringlengthConversion.java- Konversi panjangtimeConverter.java- Konversi waktudogPlay.java+ exercise markdown
Program kalkulator gaji karyawan dengan fitur lengkap.
- Perhitungan gaji mingguan dan bulanan
- Dukungan perhitungan lembur (1.5x gaji normal)
- Perhitungan otomatis potongan pajak 20%
- Format output currency IDR (Rupiah)
Gaji Mingguan:
- Gaji Reguler = Jam kerja reguler × gaji per jam
- Gaji Lembur = Jam kerja lembur × gaji per jam × 1.5
- Gaji Kotor = Gaji reguler + gaji lembur
- Potongan Pajak = Gaji kotor × 20%
- Gaji Bersih = Gaji kotor - potongan pajak
Gaji Bulanan:
- Semua nilai mingguan dikalikan 4 (asumsi 4 minggu/bulan)
- Hari kerja: Senin-Jumat (5 hari/minggu)
- Jam kerja standar: 8 jam/hari (40 jam/minggu)
- Pajak: 20% dari gaji kotor
- Mata uang: IDR (Rupiah Indonesia)
- JDK minimal versi 8
- Cek instalasi:
java -version
# Kompilasi
javac NamaFile.java
# Jalankan
java NamaFilejavac SalaryCalculator.java
java SalaryCalculatorMasukkan gaji per jam: 50000
Masukkan jam kerja reguler dalam seminggu: 40
Masukkan jam kerja lembur dalam seminggu: 0
=== Gaji Mingguan ===
Gaji Per Jam: IDR 50000.00
Jam Kerja Reguler: 40.0
Jam Kerja Lembur: 0.0
Gaji Kotor: IDR 2000000.00
Potongan Pajak (20%): IDR 400000.00
Gaji Bersih: IDR 1600000.00
=== Gaji Bulanan (Asumsi 4 Minggu) ===
Gaji Kotor Bulanan: IDR 8000000.00
Potongan Pajak Bulanan (20%): IDR 1600000.00
Gaji Bersih Bulanan: IDR 6400000.00
- ✅ Syntax dasar Java
- ✅ Variabel dan tipe data
- ✅ Operator (arithmetic, comparison, logical, assignment, ternary)
- ✅ Conditional statements (if, if-else, nested if-else, ladder if-else)
- ✅ Methods dan parameters
- ✅ Method overloading
- ✅ Expression dan statements
- ✅ Input/Output dengan Scanner
- ✅ String formatting dan currency formatting
- Input harus berupa angka (gunakan titik untuk desimal, contoh: 50000.0)
- Setiap folder berisi file
.mduntuk penjelasan latihan - Challenge di
dayThree/challenge-operators/untuk menguji pemahaman - Kode dapat dimodifikasi sesuai kebutuhan pembelajaran
- Basic Syntax
- Operators
- Conditionals
- Methods
- Method Overloading
- Loops (Coming soon)
- Arrays (Coming soon)
- OOP Concepts (Coming soon)
Repository: Course Java - From Zero to Hero Last Updated: October 14, 2025