. .

BAGIAN KE TIGA : JAVA SWITCH STATEMENT PADA NETBEAN

Posted by CHRISTIANTO D,WIBOWO | D3MI-2016 STMIK BUMI GORA On Rabu, November 16, 2016 No comments

Sebelum kita meneruskan mempelajari pembelajaran ini, ada baiknya kita baca artikel-artikel sebelumnya yang terhubung dengan langkah-langkah pembelajaran ini (Link) BAHASA PEMROGRAMAN - JAVA.
Cara lain untuk mengontrol aliran program dengan sesuatu yang disebut pernyataan switch statement. Sebuah switch statement memberikan pilihan untuk menguji rentang nilai untuk sebuah variabel. switch statement dapat digunakan sebagai pengganti rumit dan panjangnya, if … else if statements
Tidak seperti if-then dan if-then-else statementsswitch statement dapat memiliki beberapa kemungkinan jalur eksekusi. Sebuah switch statement bekerja dengan byte, short, char, dan int tipe data primitif. switch statement juga bekerja dengan tipe enumerated (dibahas dalam Jenis Enum), class String, dan class khusus beberapa yang membungkus tipe data primitif tertentu: CharacterByteShort, and Integer (dibahas dalam Bilangan dan Strings).
Struktur switch statement adalah :

switch ( variable_to_test ) {
            case value: 
                  code_here;
                  break;
            case value: 
            code_here;
                    break;
        default:
                     values_not_caught_above;

}

Jadi kita mulai dengan kata switch, diikuti oleh sepasang tanda kurung bulat. Variabel ingin memeriksa diantara kurung bulat switch. Kemudian memiliki sepasang kurung keriting/kurawa. Bagian lain dari switch statement semua tertuju antara dua kurung keriting. Untuk setiap nilai yang ingin diperiksa, kita perlu kata case. Kemudian ke nilai yang ingin diperiksa:
  • case value:
Setelah case value ada tanda titik dua. Kemudian menempatkan apa yang di inginkan terjadi jika nilai cocok. Ini adalah kode yang ingin kita dieksekusi. keyword break -  dibutuhkan untuk keluar dari setiap case switch statement.


Nilai default di akhir adalah opsional. Hal ini dapat dimasukkan jika ada nilai-nilai lain yang dapat diselenggarakan di nilai variabel kita, meskipun belum diperiksa di tempat lain - baris kode lain di switch statement.

Jika semua itu membingungkan, inilah beberapa kode untuk kita coba. kita juga dapat memulai sebuah proyek baru untuk ini, atau hanya memebrikan komentar pada kode yang sudah kita miliki.
Cara cepat untuk komentar kode di NetBeans adalah dari toolbar di bagian atas. Pertama, sorot kode yang  ingin kita beri komentar. Kemudian klik ikon komentar:
Sebaiknya kita buat saja new project lagi, sehingga kita tidak perlu merubah struktur kode yang sudah kita buat sebelumnya, kita beri nama new project kita contohswitchstatement (jangan lupa create main class-nya). Berikut contoh baris kodenya :
package contohswitchstatement;

/*
 * @author Christianto Dharma Wibowo
 */
public class Contohswitchstatement {

    public static void main(String[] args) {
        int user = 18;
        
        switch (user) {
            case 18:
                System.out.println("you're 18");
                break;
            case 19:
                System.out.println("you're 19");
                break;
            case 20:
                System.out.println("you're 20");
                break;
            default
                System.out.println("you're not 18, 19 or 20");
        }
    }
    
}


Hal pertama yang baris kode lakukan adalah untuk menetapkan nilai untuk menguji. Sekali lagi, kita telah menyiapkan sebuah variabel integer dan menyebutnya user. Kita telah menetapkan nilai 18 (int user = 18;)switch statement akan memeriksa user variabel dan melihat apa yang ada di dalamnya. Kemudian akan melalui masing-masing case statements pada gilirannya. Ketika menemukan satu yang cocok, ia akan berhenti dan mengeksekusi kode untuk case statements tersebut. Barulah akan keluar ouput println dari switch statement.
Cobalah masukkan berbagai nilai untuk variabel pengguna dan melihat apa yang terjadi. Sayangnya, kita tidak dapat menguji untuk berbagai nilai-nilai setelah case statements, hanya satu nilai saja. Jadi kita tidak bisa melakukan hal seperti ini:
  • case (user <= 18):
Akan tetapi inilah Java, untuk mensiasati hal tersebut kita bisa gunakan baris kode sbb:
  • case 1: case 2: case 3: case 4:
Jadi tes baris di atas untuk rentang nilai, dari 1 sampai 4. Tapi Anda harus "mengeja" - "mengisi satu-persatu" setiap nilai. (Perhatikan di mana semua case diakhiri dengan tanda titik dua.)

CONTOH SOAL :
Tulis sebuah program yang menerima input pengguna dari konsol. Program harus mengambil nomor dan kemudian menguji untuk rentang usia berikut: 0-10, 11-20, 21-30, 30 dan lebih. Tampilan pesan di jendela Output harus dengan format berikut:
  • user_age + " is between 21 and 30"
Jadi jika pengguna memasukkan 27 sebagai usia, jendela Output harus seperti ini:
Jika pengguna adalah 31 atau lebih, Anda hanya dapat menampilkan pesan berikut:
  • "You are over 30" 
Bantuan untuk contoh soal ini;
Kita memerlukan import java.util.Scanner; karena kita membutuhkan Java Util untuk menginput data. Untuk mendapatkan nilai string dari pengguna, kita melakukan ini:
  • String age = user_input.next( );
Tapi metode next() digunakan untuk string. Usia kita dapatkan dari pengguna harus integer, sehingga kita tidak perlu menggunakan next(). Namun, metode yang sama Anda dapat menggunakan: nextInt( ). Sehingga dengan nama project yang sama baris-baris kode kita menjadi :
package contohswitchstatement;

/*
 * @author Christianto Dharma Wibowo
 */
import java.util.Scanner;
public class Contohswitchstatement {

    public static void main(String[] args) {
        Scanner user_input = new Scanner(System.in);
System.out.print("Enter your age: ");
int age = user_input.nextInt();

switch ( age ) {

case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: case 10:

System.out.println( age + " is between 0 and 10");
break;

case 11: case 12: case 13: case 14: case 15: case 16: case 17: case 18: case 19: case 20:

System.out.println(age + " is between 11 and 20");
break;

case 21: case 22: case 23: case 24: case 25: case 26: case 27: case 28: case 29: case 30:

System.out.println(age + "is between 21 and 30");
break;

default:

System.out.println("You are over 30");

}
    }
}


Jika kita ingin memeriksa apakah satu String adalah sama seperti yang lain, kita dapat menggunakan metode yang disebut sederajat - equals.
  • String user_name = "Bill";
if ( user_name.equals( "Bill" ) ) {
//DO SOMETHING HERE
}
Pada kode di atas, kita telah menyiapkan variabel String dan menyebutnya user_name. yang kemudian ditugaskan dengan nilai "Bill". Di antara kurung bulat IF kita memiliki nama variabel lagi, diikuti oleh sebuah titik. kemudian kata "equals". Di antara sepasang kurung bulat kita ketik string yang disimbolkan oleh dua tanda kutip ganda.
CATATAN: Ketika memeriksa jika satu string adalah sama seperti yang lain, mereka harus sama persis. Jadi "Bill" berbeda dari "bill". Yang pertama memiliki huruf besar "B" dan yang kedua memiliki huruf  "b" kecil .
CONTOH SOAL :
Untuk contoh soal ini, tulis sebuah program yang meminta pengguna untuk memilih antara empat warna: hitam, putih, merah, atau biru. Gunakan IF … ELSE IF statements untuk menampilkan salah satu pesan berikut, tergantung pada warna dipilih:
  1. BLACK "Kamu Adalah Se'lak" (se'lak dalam bahasa sasak lombok artinya memedi=dedemit=jin)
  2. WHITE "Kamu Orang Yang Suci"
  3. RED "Kamu Orang Yang Pemberani"
  4. BLUE "Kamu Orang Yang Romantis Yah.."
Sehingga dengan nama project yang sama baris-baris kode kita menjadi :
package contohswitchstatement;

/*
 * @author Christianto Dharma Wibowo
 */
import java.util.Scanner;
public class Contohswitchstatement {

    public static void main(String[] args) {
        Scanner user_input = new Scanner(System.in);
System.out.println("Choose a colour: Black, White, Red, Blue ");
String colour = user_input.next();

if (colour.equals("Black")) {

System.out.println("Kamu Adalah Se'lak");

}

else if (colour.equals("White")) {

System.out.println("Kamu Orang Yang Suci");

}

else if (colour.equals("Red")) {

System.out.println("Kamu Orang Yang Pemberani ");

}

else if (colour.equals("Blue")) {

System.out.println("Kamu Orang Yang Romantis Yah..");

}

else {

System.out.println("Sorry, didn't catch that!");

}
    }
}


OK, mari kita lanjutkan dan kita lihat loop. Kita akan menaikkan kecepatan sedikit di bagian berikutnya,  Java For Loops.
Terimakasih pada sumber :
  1. Switch Statements in Java - By Ken | homeandlearn.co.uk
  2. The switch Statement - Docs Oracle

0 komentar:

Posting Komentar