Selasar Inspirasi

Multi Threading



Thread merupakan sekumpulan instruksi yang dieksekusi secara independen. Sedangkan makna multi threading merupakan suatu kemampuan yang memungkinkan beberapa kumpulan instruksi dijalankan secara bersamaan dalam sebuah program.
Contoh:
class Mobil implements Runnable{ //Runnable merupakan interface bawaan java
    String nama;
    public Mobil(String m){
        nama=m;
    }
    public void run(){   //implementasi interface Runnable
        for (int i=0;i<4;i++){
            try {
                Thread.currentThread().sleep(1000); //jeda 1 detik
            } catch (InterruptedException ie){
                System.out.println("terinterupsi");
            }
            int j = i+1;
            System.out.println("Thread "+nama+" : Posisi"+j);
        }
    }
}

public class ThreadMobil {
    public static void main (String args[]){
        Thread fortuner = new Thread(new Mobil("Fortuner"));
        Thread avanza = new Thread(new Mobil("Avanza"));
        fortuner.start();avanza.start(); //menjalankan thread
    }
}

contoh thread
[Read More...]


Penanganan Kesalahan



Ada 2 jenis kesalahan, [1] kesalahan pada saat kompilasi program, dan [2] kesalahan ketika program dijalankan. Kalau kesalahan terjadi saat kompilasi, maka program tidak akan dijalankan. Akan tetapi bila kesalahan terjadi saat program berjalan, maka program akan menjadi error. Oleh karena itu perlu mekanisme penanganan kesalahan. Dalam java penanganan kesalahan menggunakan mekanisme Try-Catch.
Hirarki Exception
Hirarki Kelas Exception
Deklarasi
a. Penanganan Tunggal
try {
//isi yang memungkinkan error
} catch (jenis error){
//dijalankan jika tidak terjadi error
}

Contoh :
public class Bilangan {

    public static void main(String args[]) {
        try {
            int a = 5;
            int b = 0;
            int c = a / b;
            System.out.println(c);
        } catch (Throwable e) {
            System.out.println("terjadi error");
            System.out.println(e.getMessage());
        }
    }
}

penanganan kesalahan pada operasi bilangan

b. Penanganan Bertingkat

try {
} catch (jenis error 1) {
//jika jenis error 1 terjadi
} catch (jenis error 2) {
//jika jenis error 2 terjadi
}..... 
catch (jenis error n) {
//jika jenis error n terjadi
}  

Contoh :
public class Bilangan {

    public static void main(String args[]) {
        try {
            int[] bil=new int[3];
            bil[4]=7;
            
            int a = 5;
            int b = 0;
            int c = a / b;
            System.out.println(c);
            
        } catch (ArithmeticException e) {
            System.out.println("terjadi error");
            System.out.println(e.getMessage());
        } catch (IndexOutOfBoundsException e){
            System.out.println("error");
            System.out.println(e.getMessage());
        }
    }
}
multiple exception handling

c. Melontarkan Exception
Melontarkan Exception berfungsi untuk memberitahukan kepada user ketika terjadi kesalahan, misalnya seperti mahasiswa salah dalam memasukkan nim, maka perlu ada pemberitahuan kesalahan input data.
Pelontaran kesalahan menggunakan keyword throws diikuti dengan kelas exception-nya.

Contoh:
public class Mahasiswa {
    String nim;
    public String getNim(){
        return nim;
    }
    
    public void setNim(String nim) throws Throwable{
        if (nim==null){
           throw new Throwable("nim harus diisi"); 
        }
        this.nim=nim;
    }
    public static void main (String args[]){
       try {
           Mahasiswa m1 = new Mahasiswa();
           m1.setNim(null);
       } catch (Throwable e){
           System.out.println("terjadi error");
           System.out.println(e.getMessage());
       }
    }
}
pelontaran exception


d. Penggunaan Block Finally
Blok Finally merupakan blok yang selalu dijalankan pada proses try catch, terlepas terjadi error pada program ataupun tidak.

Contoh:
public class Mahasiswa {
    String nim;
    public String getNim() {
        return nim;
    }

    public void setNim(String nim) throws Throwable {
        if (nim == null) {
            throw new Throwable("nim harus diisi");
        }
        this.nim = nim;
    }

    public static void main(String args[]) {
        try {
            Mahasiswa m1 = new Mahasiswa();
            m1.setNim(null);
        } catch (Throwable e) {
            System.out.println("terjadi error");
            System.out.println(e.getMessage());
        } finally {
            System.out.println("program tetap jalan, apapun yang terjadi");
        }
    }
}

contoh penggunaan block finally
[Read More...]


Pemrograman Berorientasi Objek



1. Pemrograman Terstruktur vs Pemrograman Berorientasi Objek
Konsep pemrograman terstruktur memandang sebuah program sebagai suatu prosedur besar yang selanjutnya dapat dibagi menjadi prosedur-prosedur yang lebih kecil dan saling berinteraksi satu sama lain. Sedangkan konsep pemrograman berorientasi objek (OOP) membagi program menjadi objek-objek yang saling berinteraksi satu sama lain. Objek dapat berupa benda yang nyata maupun tidak nyata (konsep).
2. Konvensi Pemrograman Java
Ketentuan- ketentuan dalam penamaan di Java
konvensi pemrograman java
Konvensi selengkapnya ada di http://www.oracle.com/technetwork/java/codeconv-138413.html
3. Kelas
Kelas merupakan konsep atau deskripsi dari sesuatu. Bisa kita ibaratkan kelas ini seperti sebuah cetakan kue yang siap digunakan untuk menciptakan kue-kue (object).
Pendeklarasian Kelas dalam Java
Class NamaKelas
Contoh :
class Kue{
}

Di dalam kelas, kita dapat mendeklarasikan berbagai atribut (disebut sebagai variabel) dan perilaku (disebut sebagai methods) yang dimiliki oleh object yang akan diciptakan.
Contoh:
class Kue {
String warna, ukuran, rasa; //variabel

String ringan(){ //methods
String kondisi = "aku bisa terapung di air";
return kondisi;
    }
}

4. Objek
Objek merupakan perwujudan (instansiasi) dari Kelas. Bila Kelas sebagai cetakan kue, maka objek merupakan kue yang diciptakan dari cetakan tersebut.
Deklarasi Object
//membuat objek dari suatu kelas menggunakan new
nama kelas  nama_objek = new nama_kelas 

//memanggil method dari objeknya
nama_objek.nama_method();

//mengeset atribut
nama_objek.nama_atribut=value;
Di dalam kelas kita mendeklarasikan berbagai variabel/properties dan method. Adapun objek merupakan instansiasi (perwujudan) dari kelas yang ada.
Contoh:
public class Kue {
    //variabel
    String warna, ukuran, rasa;

    String ringan() { //methods
        String kondisi = "aku bisa terapung di air";
        return kondisi;
    }

    public static void main(String args[]) {
        Kue bolu = new Kue(); //membuat objek kue bolu

        //mengeset nilai variabel
        bolu.warna = "cokelat";
        bolu.ukuran = "sedang";
        bolu.rasa = "manis";

        bolu.ringan(); //memanggil methods

        System.out.println("sku kue " + bolu.warna + ", " + bolu.ukuran + ", " + bolu.rasa
                + ", dan "+bolu.ringan());
    }
}

kelas di java

5. Methods
Ada 2 jenis Methods dalam java :
1. Methods yang memiliki nilai kembalian (dalam pemrograman terstruktur disebut Fungsi).
2. Methods yang tidak memiliki nilai kembalian (dalam pemrograman terstruktur disebut Prosedur)
Contoh :
class Mobil {

    void klakson() { //tidak memiliki nilai kembalian, ditandai dengan void
        System.out.println("piiiiiiiiiim");
    }

    String ngebut(String aksi) { //memiliki nilai kembalian (ada return)
        return aksi;
    }
}

public class Transport {

    public static void main(String args[]) {
        Mobil lamborgini = new Mobil();
        lamborgini.klakson();
        System.out.println(lamborgini.ngebut("broooom"));

    }
}

method di java

6. Variabel This
Variabel this merupakan variabel yang digunakan untuk mengacu kedalam class dimana kita coding. Jadi misalkan kita coding di class titik lalu di dalam salah satu method kita mengetikan this, berarti kita mengacu kepada class titik.
//penulisan variabel tanpa this
public class Titik{
 int x = 0;
 int y = 0;
 
 //constructor
 public Titik(int a, int b){
  x = a;
  y = b;
 }
}

//penulisan variabel dengan this
public class Titik{
 int x = 0;
 int y = 0;
 
 //constructor
 public Titik(int x, int y){
  this.x = x;
  this.y = y;
 }
}

7. Konstruktor
Konstruktor merupakan metode yang secara otomatis dipanggil ketika objek dipanggil. Cara membuat konstruktor : memiliki nama yang sama dengan kelas, tidak mengembalikan nilai dan tidak menggunakan kata kunci void.
public class Motor {

    String bahan = "baja";

    //konstruktor
    public Motor() {
        System.out.println("mesin pembuat rangka motor siap dijalankan");
    }

    public static void main(String args[]) {
        Motor Yamaha = new Motor();
        System.out.println(Yamaha.bahan);
    }
}

konstruktor pada java

8. Hak Akses Dalam Java

1. public : dapat digunakan dari luar kelas maupun package
2. protected : dapat digunakan dari sub-class atau class lain dalam satu package
3. private : hanya digunakan oleh class tersebut saja
4. tanpa hak akses (default): dapat digunakan class lain dalam satu package
secara lebih detail dapat dilihat pada tabel


Aksesibilitas


Public


Private


Protected


Default


Dari kelas yang sama


ya


ya


ya


ya


Dari sembarang kelas dalam package yang sama


ya


tidak


ya


ya


Dari sembarang kelas di luar package


ya


tidak


tidak


tidak


Dari sub kelas dalam package yang sama


ya


tidak


ya


ya


Dari sub kelas di luar package


ya


tidak


ya


tidak


9. Paket (Package)
Paket dalam java digunakan untuk mengelompokkan beberapa kelas agar lebih teratur dan mudah dalam melakukan maintenance.
Deklarasi :
Pembuatan paket :
Package NamaPackage

Nama paket tidak boleh diawali dengan nomor dan tidak boleh mengandung karakter unik dan spasi. Paket biasanya bertingkat, untuk memberikan tingkatan pada paket, dapat menggunakan tanda titik (.)
image

Bila Anda ingin menggunakan kelas yang berada di luar paket dimana Anda bekerja, maka Anda perlu mengimport paket dimana kelas tersebut berada
Import NamaPackage.NamaKelas

Contoh:
Misalkan kita mempunyai dua buah paket, paket kendaraan dan paket udara yang berada di dalam paket kendaraan.

a. Paket Udara
package kendaraan.udara;

public class Pesawat {

    public Pesawat() {
        System.out.println("Pesawat Ready");
    }

    public String terbang() {
        String aksi = "wuuuuuuuuuush";
        return aksi;
    }
}

b. Paket Kendaraan
package kendaraan;

import kendaraan.udara.Pesawat;

public class Kendaraan {

    public static void main(String args[]) {
        Pesawat garuda = new Pesawat();
        System.out.println(garuda.terbang());
    }
}

package di java


10. Pewarisan (Inheritance)
Merupakan mekanisme dimana sebuah kelas dapat mewarisi seluruh atribut atau methods milik kelas lain dengan ketentuan tertentu. Ibaratnya kalau di dunia nyata, seorang anak pasti mewarisi sifat dari orang tuanya. Kelas yang mewariskan sifat disebut superclass, sedangkan kelas yang mewarisi sifat disebut subclass. Kelas yang ingin mewarisi sifat dari superclass menggunakan keyword extends, sedangkan untuk memanggil atribut atau method dari superclass menggunakan keyword super.
class Orang{
    String nama,alamat;
    public Orang(String n,String a){ 
        nama=n;
        alamat=a;
    }
}

class Mahasiswa extends Orang { //mahasiswa mewarisi atribut dan method Orang
    String nim;
    Mahasiswa(String n,String a,String i){
        super(n,a); //pemanggilan superclass menggunakan keyword super
        nim=i;
    }
    void belajar(){
        System.out.println("belajar sungguh-sungguh");
    }
}

public class JenisOrang {
    public static void main (String args[]){
       Mahasiswa arif = new Mahasiswa("arif","baki","M0508031");
       arif.belajar();
    }
}

pewarisan di java
Pada contoh diatas, kelas Mahasiswa merupakan turunan dari kelas Orang. Jadi meskipun kelas Mahasiswa tidak memiliki atribut nama dan alamat, tetapi karena kelas Mahasiswa merupakan turunan dari kelas Orang, maka semua atribut maupun methods yang dimiliki kelas Orang juga ada pada kelas Mahasiswa.

11. Keyword Final
Keyword final merupakan keyword yang dapat digunakan untuk menandai bahwa suatu kelas, atribut, atau methods sudah tidak dapat diubah lagi. Selain itu ketika menggunakan keyword final, atribut harus langsung dideklarasikan. Jika tidak dideklarasikan langsung, akan terjadi kesalahan (error).
keyword final di java

Contoh:
public class Final {

    private final double pi = 3.14;

    void ubahpi(double pi) {
        this.pi = pi;
    }
}
Ketika atribut pi kita deklarasikan ulang, akan muncul pesan kesalahan karena keyword final dideklarasikan ulang
pesan kesalahan

12. Polimorfisme
Polimorfisme merupakan kemampuan untuk memperlakukan object yang memiliki bentuk atau perilaku yang berbeda.
Implementasi konsep polimorfisme : [a]Overloading dan, [b]Overriding

a. Overloading
Overloading ini ada 2 : Overloading pada konstruktor dan Overloading pada methods. Overloading merupakan mekanisme membuat lebih dari satu konstruktor atau methods pada sebuah kelas, dengan nama yang sama namun harus memiliki parameter yang berbeda.
Contoh:
public class Motor {
    String bahan = "baja";

    //konstruktor
    public Motor() {
        System.out.println("mesin pembuat rangka motor siap dijalankan");
    }
    
    public Motor(String warna){ //overloading konstruktor
        System.out.println("bahan berwarna "+warna);
    }
    
    String aksi(){
        String suara="broom";
        return suara;
    }
    
    String aksi(String klakson){ //overloading methods
        return klakson;
    }

    public static void main(String args[]) {
        Motor Yamaha = new Motor("hitam");
        System.out.println(Yamaha.aksi());
        System.out.println(Yamaha.aksi("piiiiiiim"));
    }
}

overloading di java


b. Overriding
Berbeda dengan Overloading, Overriding merupakan kemampuan subclass (kelas turunan) untuk menimpa methods dari superclass (kelas induk), yaitu dengan cara menggunakan nama dan parameter yang sama pada methods.
Contoh:
class Bayi{
    void lari(){
        System.out.println("Tidak bisa lari");
    }
}

public class Remaja extends Bayi {
    
    @Override
    void lari() {
        System.out.println("bisa lari");
    }
    
public static void main (String args[]){
          Remaja Arif = new Remaja();
    Arif.lari();
    }
}
overriding


13. Abstract dan Interface
Abstract merupakan kelas yang memiliki methods namun tidak dideklarasikan, pendeklarasian dilakukan pada kelas turunannya. Untuk mengimplementasikan abstraksi menggunakan keyword extends.
public abstract class Hewan {
 public abstract void suara();
}

Contoh :
public abstract class Hewan {

    public abstract void suara();
}

class Kucing extends Hewan {

    public void suara() {
        System.out.println("Meooong....");
    }
}

class Ayam extends Hewan {

    public void suara() {
        System.out.println("kukuruyuuk....");
    }
}

class HewanDarat {

    public static void main(String args[]) {
        Kucing anggora = new Kucing();
        anggora.suara();
    }
}

abstract pada java

Interface : merupakan mekanisme dimana kita dapat menentukan methods yang harus ada pada kelas. Mirip dengan abstract tetapi memiliki sedikit perbedaan.


Abstract


Interface


Bisa berisi abstract dan non-abstract method.


Hanya boleh berisi abstract method.


Method boleh bersifat static.


Method tidak boleh bersifat static.


Method boleh bersifat final.


Method tidak boleh bersifat final.


Kita harus menuliskan sendiri modifiernya.


Kita tidak perlu susah2 menulis public abstract di depan nama method. Karena secara implisit, modifier untuk method di interface adalah public dan abstract.


Bisa mendeklarasikan constant dan instance variable.


Hanya bisa mendeklarasikan constant.  Secara implisit variable yang dideklarasikan di interface bersifat public, static dan final.


Suatu abstact class hanya bisa meng-extend satu abstract class lainnya.


Suatu interface bisa meng-extend satu atau lebih interface lainnya.


Suatu abstract class hanya bisa meng-extend satu abstract class dan meng-implement beberapa interface.


Suatu interface hanya bisa meng-extend interface lainnya.  Dan tidak bisa meng-implement class atau interface lainnya.


Untuk mengimplementasikan interface menggunakan keyword implements.
Contoh :

abstract class HewanDarat {
    public abstract void jalan();
}

abstract class HewanLaut {
    public abstract void berenang();
}

interface infHewanDarat {
    public abstract void jalan();
}

interface infHewanLaut {
    public abstract void berenang();
}

class Katak extends HewanDarat {
    public void jalan() {
        System.out.println("jalan diatas tanah");
    }
}

class KatakHijau implements infHewanDarat, infHewanLaut {
    public void jalan() {
        System.out.println("jalan diatas tanah");
    }
    public void berenang(){
        System.out.println("berenang di air");
    }
}

public class Hewan {
    public static void main(String args[]) {
    Katak k1 = new Katak();
    k1.jalan();
    KatakHijau kh1 = new KatakHijau();
    kh1.jalan();kh1.berenang();
    }
}

interface pada java

Notes : baik pada abstract maupun interface, hak akses tidak boleh private.

14. Inner Class
Java mendukung pembuatan kelas di dalam kelas (inner class). Cara membuatnya seperti membuat kelas biasa, hanya saja letak kelas berada di dalam kelas lain.
Contoh :
public class Hitung {

    class Tambah {   //inner class
        void tambah(double a, double b) {
            double hasil = a + b;
            System.out.println(hasil);
        }
    }

public static void main(String args[]) {
System.out.println("Selamat belajar");

//membuat objek dari inner class (kelas Tambah)
Hitung.Tambah bil = new Hitung().new Tambah();        
bil.tambah(5, 7);
    }
}

inner class pada java

15. Keyword Static
Keyword static membolehkan kita untuk mengakses sebuah atribut atau metode dari kelas secara langsung tanpa harus membuat objek dari kelas tersebut.
Contoh :
public class Berhitung {
    public static int tambah (int a, int b){ //static
        return a+b;
    }
    
    public double tambah (double a, double b){ //non static
        return a+b;
    }
    
    public static void main (String args[]){
        int hasil1 = Berhitung.tambah(2, 3); //static
        System.out.println(hasil1);
        
        Berhitung hasil2 = new Berhitung(); //non static, perlu membuat objek
        System.out.println(hasil2.tambah(5, 5));
    }
}

keyword static pada java
[Read More...]


Array pada Java



Array merupakan suatu variabel yang dapat menyimpan beberapa data dengan tipe yang sama. Data disimpan dalam sebuah blok memori yang berdekatan yang kemudian dibagi menjadi beberapa ruang.
array java
Pendeklarasian:
TipeData[] namaArray; atau TipeData namaArray[]; 

Pendeklarasian sekaligus pembentukan objek
TipeData[] namaArray = new tipedata[jumlah] atau
TipeData namaArray[] = new tipedata[jumlah] 

Contoh :
int[] angka = new int[100];
        System.out.println ("barisan bilangan : ");
        for (int i=1; i<=10; i++){
            angka[i]=i;
            System.out.print(angka[i]+" ");
        }

tipe array

> Array Multidimensi
Selain deretan variabel satu dimensi, kita dapat membuat array yang berukuran lebih dari satu dimensi, yaitu array multidimensi.
Pendeklarasian :
TipeData [] [] namaArray = new TipeData [jumlah] [jumlah] 

Contoh:
int[][] angka = new int[3][2];
        for (int i=0; i<angka.length;i++){
            for (int j=0; j<angka[0].length;j++){
                angka[i][j]=j;
System.out.println("baris ke-"+i+" kolom ke-"+j+" bernilai "+angka[i][j]);
            }
        }

array 2 dimensi java


LATIHAN

A. Menampilkan Hari
public class Hari {
    public static void main (String args[]){
        String[] hari = {"Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "Minggu"};
        
        for (int i=0; i<=hari.length; i++){
            System.out.println(hari[i]);
        }
    }
}
contoh program sederhana array


B. Barisan Fibonacci
import javax.swing.JOptionPane;

public class Fibonacci {
    public static void main (String args[]){
    int input = Integer.parseInt(JOptionPane.showInputDialog(null, "jumlah deret fibonacci yang ingin ditampilkan : ", "Program Fibonacci", 1));
    int i = input-1;
    int[] fibo = new int[input];
    int sum = 0;
    
    for (i=0; i < input; i++){
        if (i==0) {fibo[0]=1;System.out.print(fibo[0]+" ");}
            else if (i==1) {fibo[1]=1;System.out.print(fibo[1]+" ");}
            else {
          fibo[i]=fibo[i-1]+fibo[i-2];          
          System.out.print(fibo[i]+" ");
        }
        sum = sum + fibo[i];
    }
    System.out.print("\nhasil = "+sum);
    }
} 

fibonacci java


C. Tabel Perkalian
import javax.swing.JOptionPane;

public class TabelPerkalian {
    public static void main (String args[]){
    int input = Integer.parseInt(JOptionPane.showInputDialog("Masukkan tabel perkalian yang diinginkan : "));
    int[][] kali = new int[input][10];
    int hasil;
    
    for (int i=0; i<kali.length; i++){
        kali[i][0]=i+1;
        System.out.println("");
        for (int j=0; j < kali[i].length;j++){
            kali[0][j]=j+1;
            hasil=kali[i][0]*kali[0][j];
            System.out.println(kali[i][0]+"*"+kali[0][j]+"="+hasil+" ");
        }
      }    
    }
}
perkalian dengan java
[Read More...]


Struktur Perulangan



1. Perulangan For
Merupakan perulangan yang memiliki variabel untuk pengkondisian. Pada perulangan For, terdapat blok untuk membuat variabel dan melakukan proses pengkondisian. Bentuk umum :
For (kondisi awal; persyaratan atau kondisi akhir; increment/decrement){
Blok Statement;
}
Contoh :
for (int i=0; i<=5; i++){
  System.out.println("urutan ke -"+i);
contoh perulangan for

2. Perulangan While
Perulangan While melakukan proses perulangan untuk suatu kondisi dimana perulangan akan terus berjalan selama kondisi bernilai benar, dan akan berhenti bila kondisi bernilai salah. Bentuk umum :
while (kondisi) {
Blok statement;
}
Contoh :
int counter = 0;
while (counter <=5){ //kondisi perulangan
       System.out.println("counter ke -"+counter);
       counter++; //increment
      }
contoh perulangan while

3. Perulangan Do-While
Perulangan ini mirip dengan perulangan while, hanya saja minimal instruksi akan dijalankan sekali meskipun kondisinya bernilai salah. Bentuk umum :
Do {
   Blok statement;
} While (kondisi);
Contoh :
int counter = 5;
        do {
        System.out.println("counter ke -"+counter);
            counter++; //increment
        }
        while (counter <5);

contoh perulangan do while

4. Perintah Break dan Continue
Perintah break berfungsi untuk menghentikan proses perulangan.
Contoh:
for (int i=1; i <=10; i++){
            System.out.println("counter - "+i);
            if (i==5){break;} //kondisi untuk memberhentikan loop
        }
contoh perintah break
Sedangkan perintah continue, digunakan untuk meloncati sebuah perulangan, maksudnya instruksi yang seharusnya dijalankan dapat dilewati.
Contoh :
for (int i=1; i <=6; i++){
            if (i%2 == 0){continue;}} 

LATIHAN

A. Menampilkan Bilangan Asli
public class BilanganAsli {
 public static void main (String args[]){
     for (int bilAsli =1; bilAsli <=20; bilAsli++){
         System.out.print(bilAsli+" ");
     }
 }   
}
program bilangan asli

B. Menampilkan Bilangan Cacah
public class BilanganCacah {
    public static void main (String args[]){
        System.out.println("Bilangan Cacah: ");
        int i = 0;
        while (i<=5){
            System.out.println(i);
            i++;
        }
    }
}
program bilangan cacah

C. Hitung Faktorial
import javax.swing.JOptionPane;
public class Faktorial {
    public static void main (String args[]){
    int angka = Integer.parseInt(JOptionPane.showInputDialog(null,"Masukkan Nilai :","Program Faktorial",1));
    int hasil=1;
    for (int i=angka; i>=1;i--){
    hasil *=i;
    System.out.print(i+"*");
  }
    System.out.println("="+hasil);
 }
}
program hitung faktorial

D. Hitung Pangkat
public class Pangkat {
    public int HitungPangkat(int x, int y){
        if (y==1){
            return x;
        } else {
            return x * HitungPangkat(x, y-1);
        }
    }
    
    public static void main (String args[]){
         Pangkat p = new Pangkat();
        System.out.println(p.HitungPangkat(2,4));
    }
}
program hitung pangkat
[Read More...]


Struktur Percabangan



Ada 4 jenis percabangan pada java : Percabangan IF, Percabangan IF-ELSE, Percabangan NESTED-IF (IF Bersarang), dan SWITCH-CASE
1. Percabangan IF
Percabangan IF merupakan salah satu bentuk pernyataan yang berfungsi untuk mengambil sebuah keputusan.
Struktur dari Percabangan IF :
if (kondisi){
 //statement yang akan dijalankan}

Contoh:

package Logika;
import java.util.Scanner;
import java.text.DecimalFormat;

public class PercabanganIF {
    public static void main (String args[]){
    double nilai;
    //pembulatan desimal 2 angka di belakang koma
DecimalFormat df = new DecimalFormat("#.##");
      
    //membuat objek input dari kelas Scanner
Scanner input = new Scanner(System.in);
     
     //membaca input
System.out.print("Masukkan nilai: ");nilai = input.nextDouble();
if (nilai < 60) {
System.out.println("Anda tidak lulus karena nilai Anda :"+df.format(nilai));
     }
  }
}

contoh percabangan IF
2. Percabangan IF-ELSE
Percabangan IF-ELSE mirip dengan percabangan IF, hanya saja pada percabangan IF-ELSE, memiliki kondisi untuk else. Maksudnya bila kondisi pada IF tidak terpenuhi, maka perintah pada else akan dijalankan

Struktur dari Percabangan IF-ELSE:

if (kondisi){
 //statement yang akan dijalankan jika true
} 
else {
 //statement yang akan dijalankan jika false
}

Contoh :

import javax.swing.JOptionPane;

public class GanjilGenap {
    public static void main (String args[]){
      Integer input=Integer.parseInt(JOptionPane.showInputDialog("Masukkan angka (1=100) : "));
    
      //pengecekan apakah bilangan yang dimasukkan ganjil atau genap
      if ((input % 2) != 0){ 
          JOptionPane.showMessageDialog(null,"Bilangan Ganjil");
      } else {JOptionPane.showMessageDialog(null,"Bilangan Genap");}
    }
}

program bilangan
3. Percabangan NESTED-IF
Percabangan NESTED-IF merupakan gabungan dari beberapa percabangan IF atau IF-ELSE.
Struktur dari Percabangan NESTED-IF:

if (kondisi1){
 //statement dijalankan jika kondisi 1 terpenuhi} 
  else if (kondisi2){
 //statement dijalankan jika kondisi 2 terpenuhi} 
  else if (kondisi3){
 //statement dijalankan jika kondisi 3 terpenuhi} 
  else {
 //statement dijalankan bila semua kondisi tdk terpenuhi}

Contoh :

package Logika;
import javax.swing.JOptionPane;

public class NestedIF {
    public static void main (String args[]){
        String input = JOptionPane.showInputDialog("Masukkan Nilai Anda : (1-100)");
        double masukan= Double.valueOf(input); //mengambil nilai double dari tipe data String
        
        if (masukan >= 60){
        System.out.println("Selamat Anda lulus mata kuliah ini");
        } 
        
        if (masukan >=85){
        System.out.println("Selamat nilai Anda A");
        } else if (masukan >=75){
        System.out.println("Selamat nilai Anda B");
        } else if (masukan >=65){
        System.out.println("Selamat nilai Anda C");
        } else {System.out.println("Selamat bertemu lagi di semester tahun depan");}
    }
}

program nested if
4. Percabangan SWITCH-CASE
Merupakan percabangan untuk kasus banyak pilihan dan biasanya berupa urutan.
Struktur dari Percabangan SWITCH-CASE:

switch (switch_expression){
 case case_selector1:
  statement1;
  statement2;
  ....
  break;
 case case_selector2:
  statement1;
  statement2;
  ....
  break;
 ....
 default:
  statement1;
  statement2;
  ----
  break;}

Contoh :

package Logika;
import javax.swing.JOptionPane;

public class SwitchCase {
    public static void main (String args[]){
        int angka = Integer.parseInt(JOptionPane.showInputDialog("Masukkan bulan dalam Angka : "));
        
        switch (angka){
            case 1 :
                System.out.println("Januari");
                break;
            case 2 :
                System.out.println("Februari");
                break;
            case 3 :
                System.out.println("Maret");
                break;
            case 4 :
                System.out.println("April");
                break;
            case 5 :
                System.out.println("Mei");
                break;
            case 6 :
                System.out.println("Juni");
                break;
            case 7 :
                System.out.println("Juli");
                break;
            case 8 :
                System.out.println("Agustus");
                break;
            case 9 :
                System.out.println("September");
                
            case 10 :
                System.out.println("Oktober");
                break;
            case 11 :
                System.out.println("November");
                break;
            case 12 :
                System.out.println("Desember");
                break;
            default :
                System.out.println("bulan tidak diketahui");
        }
    }
}

program switch case
[Read More...]


Site Map



[Read More...]


 
Return to top of page Copyright © 2010 | Platinum Theme Converted into Blogger Template by HackTutors