Followers

Friday, February 8, 2019

Operator dalam Java(bag.2)




Berikut merupakan contoh program penggunaan operator dalam java:


Assalamu'alaikum Wr. Wb.

Pada postingan kali ini, kita akan membahas cara penggunaan operator-operator java yang sudah kita bahas sebelumnya. Oleh karena itu bagi anda yang belum membaca postingan sebelumnya, kami sarankan untuk membacanya terlebih dahulu, agar anda lebih mudah memahami pembahasan kali ini :). Silahkan klik disini untuk kembali ke postingan Operator dalam Java(bag.1).
Berikut merupakan contoh program penggunaan operator dalam java:

1.Operator Assignment
Operator Assignment/Penugasan merupakan jenis operator yang paling sering kita akan jumpai didalam java. Operator assignment memberikan nilai pada variabel yang ada disebelah kiri(left operand) dengan nilai yang ada disebelah kanan(right operand).
Kode program:

public class AssignmentOperator2{
public static void main(String[]args){
int nilai1 = 10;
int nilai2 = 20;

nilai2 = nilai1; //simple assigment operator
System.out.println(" = hasil :"+nilai2);
nilai2 += nilai1;
System.out.println(" += hasil :"+nilai2);
nilai2 -= nilai1;
System.out.println(" -= hasil :"+nilai1);
nilai2 *= nilai1;
System.out.println(" *= hasil :"+nilai2);
nilai2 /= nilai1;
System.out.println(" /= hasil :"+nilai2);
nilai2 %= nilai1;
System.out.println(" %= hasil :"+nilai2);
}
}

Output:
= hasil :10
+= hasil :20
-= hasil :10
*= hasil :100
/= hasil :10
%= hasil :0
Bedah kode:
  • nilai2 = nilai1; memberikan operand sebelah kanan dengan nilai operand sebelah kiri. Dalam hal ini mengganti nilai2 menjadi nilai1 yaitu 10
  • nilai2 += nilai1; setara dengan nilai2 = nilai2 + nilai1, nilai2 +=10 atau nilai2 = 10 + 10;
    2.Operator Arithmetic
    Operator Arithmetic merupakan operator yang digunakan untuk melakukan operasi aritmatika pemrograman.
    Kode program:

    public class ArithmeticOperator{
    public static void main(String[]args){
    int nilai1 = 10;
    int nilai2 = 20;
    String a = "kode";
    String b = "anakit";

    System.out.println("nilai1 + nilai2 = "+(nilai1+nilai2));
    System.out.println("nilai1 - nilai2 = "+(nilai1-nilai2));
    System.out.println("nilai1 * nilai2 = "+(nilai1*nilai2));
    System.out.println("nilai1 / nilai2 = "+(nilai1/nilai2));
    System.out.println("nilai1 % nilai2 = "+(nilai1%nilai2));
    System.out.println("a+b = "+(a+b));
    }
    }

    Output:
    nilai1 + nilai2 = 30
    nilai1 - nilai2 = -10
    nilai1 * nilai2 = 200
    nilai1 / nilai2 = 0
    nilai1 % nilai2 = 10
    a+b = kodeanakit
    Bedah kode:
    • a+b; jika tipe data dari variabel a dan b adalah string, maka fungsi dari operator tersebut adalah untuk menggabungkan.
    3.Operator Unary
    Operator Unary merupakan operator yang digunakan untuk melakukan operasi aritmatika dengan melibatkan satu operand. Operasi dapat berupa menambah, mengurangi, atau bahkan untuk membalik nilai dari boolean.
    Kode program:

    public class UnaryOperator{
    public static void main(String[]args){
    int nilai;
    nilai =9;

    System.out.println("= "+nilai);//9
    nilai =-8;
    System.out.println("=-8 ="+nilai);//-8
    nilai ++;//-8+1
    System.out.println("++ ="+nilai);//-7
    nilai --;//-7-1
    System.out.println("-- ="+nilai);//-8
    boolean a = true;
    System.out.println("a ="+a);//true
    System.out.println("!a ="+!a);//false
    }
    }

    Output:
    = 9
    =-8 =-8
    ++ =-7
    -- =-8
    a =true
    !a =false

    Bedah kode:
    • nilai =-8; mengganti nilai dari variabel nilai menjadi -8
    • nilai ++; menambah nilai variabel nilai dengan 1, nilai +1;
    • nilai --; mengurangi nilai varibel nilai dengan 1, nilai -1;
    • !a ; berarti membalik nilai dari variabel a, jika awalnya a memiliki nilai true maka nilai yang dikembalikan adalah false, begitu juga sebaliknya.
    4.Operator Equality dan Relational
    Operator Equality dan Relational merupakan operator yang digunakan untuk membandingkan nilai antar 2 variabel, yang nantinya mengeluarkan nilai true atau false.
    Kode program:

    public class EqualityOperator{
    public static void main(String[]args){
    int nilai1 = 10;
    int nilai2 = 20;

    if (nilai1 == nilai2) {
    System.out.println("nilai1 == nilai2");
    }
    if (nilai1 != nilai2) {
    System.out.println("nilai1 != nilai2");
    }
    if (nilai1 < nilai2) { System.out.println("nilai1 < nilai2"); 

    } if (nilai1 > nilai2) {
    System.out.println("nilai1 > nilai2");
    }
    if (nilai1 >= nilai2) {
    System.out.println("nilai1 >= nilai2");
    }
    if (nilai1 <= nilai2) { System.out.println("nilai1 <= nilai2"); 



    }
    Output:

    nilai1 != nilai2
    nilai1 < nilai2 nilai1 <= nilai2

    Bedah kode:
    Program diatas merupakan contoh penerapan operator dalam kondisi if.
    • nilai1 == nilai2; membandingkan nilai1 dan nilai 2 apakah sama, begitu juga dengan operator equality lainnya apakah memenuhi ketentuan dari operator yang digunakan(==,<,>,<=,>=,!=)
    5.Operator Conditional
    Operator Conditional merupakan operator yang melakukan operasi conditional-AND dan conditional OR pada dua ekspresi boolean atau lebih. Operator-operator ini menunjukkan prilaku “hubungan arus pendek”, yang artinya operan ke-2 dievaluasi jika diperlukan.
    Operator conditional lainnya juga adalah ternary(?:). Operator ternary sendiri sering dianggap sebagai singkatan dari if-then-else. Cara penulisan:
    Variabel var = (expression) ? value if true : value if false;

    Kode program Conditional AND dan Conditional OR:

    public class ConditionalOperator1{
    public static void main(String[]args){
    int nilai1 = 10;
    int nilai2 = 20;

    if ((nilai1 == 10) && (nilai2 == 20)) {
    System.out.println("nilai1 = 10 AND nilai2 = 20");
    }
    if ((nilai1 == 10) || (nilai2 == 20)) {
    System.out.println("nilai1 = 10 OR nilai2 = 20");
    }
    //Salah satu kondisi salah
    System.out.println("==========");
    if ((nilai1 == 10) && (nilai2 == 2)) {
    System.out.println("nilai1 = 10 AND nilai2 = 20");
    }
    if ((nilai1 == 1) || (nilai2 == 20)) {
    System.out.println("nilai1 = 10 OR nilai2 = 20");
    }
    //semua kondisi salah
    System.out.println("==========");
    if ((nilai1 == 1) && (nilai2 == 2)) {
    System.out.println("nilai1 = 10 AND nilai2 = 20");
    }
    if ((nilai1 == 1) || (nilai2 == 2)) {
    System.out.println("nilai1 = 10 OR nilai2 = 20");
    }
    }
    }

    Output1:
    nilai1 = 10 AND nilai2 = 20
    nilai1 = 10 OR nilai2 = 20
    ==========
    nilai1 = 10
    Bedah kode:
    • Operator conditional AND(&&), membandingkan antara dua expresi boole. Jika kedua expresi boole bernilai benar(true/1) maka output akan benar(true), selain itu output akan false(0). contoh: 1 AND 1 = 1, 1 AND 0 = 0.
    • Operator conditional OR(||), berbeda dengan AND, conditional OR akan menghasilkan output benar(true), apabila salah satu atau kedua expresi boole bernilai benar(true/1). contoh: 1 OR 1 = 1, 1 OR 0 = 1, 0 OR 0 = 0.
    Kode program ternary:

    public class ConditionalOperator2{
    public static void main(String[]args){
    int nilai1 = 10;
    int nilai2 = 20;
    String result;

    result = (nilai1 == nilai2) ? "nilai1 = nilai2":"nilai1 != nilai2";
    System.out.println(result);
    result = (nilai1 < nilai2) ? "nilai1 < nilai2":"nilai1 > nilai2";
    System.out.println(result);
    }
    }

    Output:
    nilai1 != nilai2
    nilai1 < nilai2
    Bedah kode:
    • result = (nilai1 == nilai2) ? "nilai1 = nilai2":"nilai1 != nilai2"; kalimat sebelum (?) merupakan expresi boole atau kondisi yang akan di eksekusi. Kalimat sesudah (?) dan sebelum (:) merupakan nilai yang dijalankan jika kondisi bernilai true. Kalimat sesudah (:) merupakan nilai yang dijalankan jika kondisi bernilai false.
    6.Operator Bitwise dan bit shift
    Java juga menyediakan operator untuk operasi Bitwise dan Bit Shift. Operator ini jarang digunakan, akan tetapi kita perlu tahu bahwa operator ini memang ada dalam java.
    • Operator komplemen(~), berfungsi membalikkan pola bit, dari 0 menjadi 1 atau sebalikknya, sebagai contoh 00000000 menjadi 11111111.
    • Operator Bitwise AND(&), berfungsi untuk membandingkan bit dari dua atau lebih variabel. Keluaran akan menghasilkan 1 jika semua inputan(bit) adalah sama. Selain itu keluaran akan menghasilkan 0.
    • Operator Bitwise OR(|), berfungsi untuk membandingkan bit dari dua atau lebih variabel. Keluaran akan menghasilkan 1 jika salah satu bit adalah 1. Selain itu, maka keluaran akan menghasilkan nilai keluaran 0.
    • Operator Bitwise XOR(^), berfungsi untuk membandinkan bit dari dua atau lebih variabel. Keluaran akan menghasilkan 1 jika kedua bit dari kedua variabel berbeda. Selain itu, nilai keluaran adalah 0.
    • Operator Bitwise signed left shift(<<), berfungsi untuk menggeser pola bit kekiri, membuang bit paling kiri, dan memberikan nilai bit paling kanan dengan 0
    • Operator Bitwise signed right shift(>>), berfungsi untuk menggeser pola bit kekanan, membuang bit paling kanan, dan memberikan nilai bit paling kiri dengan 0
    • Operator Bitwise unsigned right shift(>>>), berfungsi untuk menggeser nilai paling kanan, adapun banyak geseran ditentukan terlebih dahulu.
    Kode program:

    public class BitwiseOperator{
    public static void main(String[]args){
    int nilai1 = 10; //biner = 00001010
    int nilai2 = 40; //biner = 00101000

    int hasil1 = nilai1 & nilai2;
    System.out.println("nilai1 & nilai2 = "+hasil1);

    int hasil2 = nilai1 | nilai2;
    System.out.println("nilai1 | nilai2 = "+hasil2);

    int hasil3 = nilai1 ^ nilai2;
    System.out.println("nilai1 ^ nilai2 = "+hasil3);

    int hasil4 = ~nilai1;
    System.out.println("~nilai1 = "+hasil4);

    int hasil5 = nilai2 << 2; System.out.println("nilai1 << nilai2 = "+hasil5); int hasil6 = nilai2 >> 2;
    System.out.println("nilai1 >> nilai2 ="+hasil6);

    int hasil7 = nilai2 >>> 3;
    System.out.println("nilai1 >>> 3 = "+hasil7);
    }
    }

    Output:
    nilai1 & nilai2 = 8
    nilai1 | nilai2 = 42
    nilai1 ^ nilai2 = 34
    ~nilai1 = -11
    nilai1 << nilai2 = 160 nilai1 >> nilai2 =10
    nilai1 >>> 3 = 5
    Bedah kode:
    • int hasil1 = nilai1 & nilai2; hasil1 = 00001010 AND 00101000, hasil1 = 00001000, biner 00001000 setara dengan desimal 8
    • int hasil2 = nilai1 | nilai2; hasi2 = 00001010 OR 00101000, hasil2 = 00101010, biner 00101010 setara dengan desimal 42
    • int hasil3 = nilai1 ^ nilai2; hasil3 = 00001010 XOR 00101000, hasil3 = 00100010, biner 00100010 setara dengan desimal 34
    • int hasil4 = ~nilai1; hasil4 = NOT 00001010, hasil4 = 11110101, setara dengan -11
    • int hasil5 = nilai2 << 2; hasil5 = 00101000 << 2; 2 bit paling kiri digeser(hapus), tambah 1 bit paling kanan dengan 0. sehingga diperoleh nilai5= 1010000 yang setara dengan desimal 160
    • int hasil6 = nilai2 >> 2; hasil6 = 00101000 >> 2; 2 bit paling kanan hapus, tambah 1 bit paling kiri dengan 0. sehingga diperoleh nilai6= 0001010 yang setara dengan desimal 10
    • int hasil7 = nilai2 >>> 3; hasil7 = 00101000 >>> 3; menghapus bit paling kanan(geser) sebanyak 3 bit. Sehingga diperoleh 00101 yang setara dengan desimal 5
    oke teman-teman, semoga postingan kali ini bermanfaat untuk kita semua.
    Wassalamu'alaikum Wr. Wb.

    Sumber:

    No comments:

    Post a Comment