4. Operator & Assignment
-
Upload
nazwah-cilik -
Category
Documents
-
view
238 -
download
0
Transcript of 4. Operator & Assignment
-
8/12/2019 4. Operator & Assignment
1/47
-
8/12/2019 4. Operator & Assignment
2/47
Topik
Unary operator
Arithmetic operator Shift operator: , dan >>> Comparison operator
Bitwise operator: &, , dan |. Short Circuit operator Conditional operator : ? Assignment operator Operator lain : new, instance of Urutan pemrosesan
-
8/12/2019 4. Operator & Assignment
3/47
The Unary Operators Dibutuhkan hanya satu operan.
1. Operator increment dan decrement : ++
dan - -2. Operator unary plus dan minus : + dan 3. Operator bitwise inversion : ~4. Operator boolean complement : !5. Cast : ()
-
8/12/2019 4. Operator & Assignment
4/47
The Unary Operators: ++ dan - -
-
8/12/2019 4. Operator & Assignment
5/47
-
8/12/2019 4. Operator & Assignment
6/47
The Unary Operators: + dan -1. X = -3;
2. Y = +3;
3. Z = -(Y+6);
-
8/12/2019 4. Operator & Assignment
7/47
The Unary Operators The Bitwise Inversion Operator: ~
converting all the 1 bits in a binary value to 0s and allthe 0 bits to 1s.Example:00001111 11110000
The Boolean Complement Operator: ! inverts the value of a boolean expression.Example:
! t rue f al se! f al se t rue
-
8/12/2019 4. Operator & Assignment
8/47
-
8/12/2019 4. Operator & Assignment
9/47
-
8/12/2019 4. Operator & Assignment
10/47
-
8/12/2019 4. Operator & Assignment
11/47
-
8/12/2019 4. Operator & Assignment
12/47
-
8/12/2019 4. Operator & Assignment
13/47
The Arithmetic Operators The Multiplication and Division Operators: * and /
multiply or divide two integers, the result will be calculated using integerarithmetic in either int or long representation. Issues:
Loses precision.i nt x = 7;i nt y = 4;i nt r esul t = x/ y;
The result will be bigger than the maximum number (overflow)byt e x = 64;byt e y = 4;byt e r esul t = x*y;
-
8/12/2019 4. Operator & Assignment
14/47
The Modulo Operator: % Adalah sisa pembagian Bisa diaplikasikan pada:
Bilangan integer
Bilangan floating - point
Example:x = 7 % 4; / / so x = 3y = 7. 6 % 2. 9; / / so y = 1. 8
-
8/12/2019 4. Operator & Assignment
15/47
The Addition and SubtractionOperators: + and -
Digunakan untuk melakukan operasipenambahan dan pengurangan.
Concatenation + bisa juga
digunakan untuk menggabungkan 2 string
-
8/12/2019 4. Operator & Assignment
16/47
Arithmetic Error Conditions Integer division by zero ( ArithmeticException)
Floating-point calculations represent out-of-range values using the IEEE 754 infinity, minusinfinity, and Not a Number (NaN) values.
Overflow
-
8/12/2019 4. Operator & Assignment
17/47
The Shift Operators: Shift operator:
> : sign right shift
>>> : unsigned right shift Fundamentals of Shifting
moving the bit pattern left or right.
applied to arguments of integral types only. Pada operator >>: Nilai bit yang baruadalah 0
Pada operator >> : Nilai bit yang barutergantung pada bit yang akan digeser, jikanilainya : 1 negatif, maka nilai baru adalah 1 0 positif, maka nilai baru adalah 0
-
8/12/2019 4. Operator & Assignment
18/47
-
8/12/2019 4. Operator & Assignment
19/47
-
8/12/2019 4. Operator & Assignment
20/47
-
8/12/2019 4. Operator & Assignment
21/47
Operator >>>
-
8/12/2019 4. Operator & Assignment
22/47
-
8/12/2019 4. Operator & Assignment
23/47
-
8/12/2019 4. Operator & Assignment
24/47
-
8/12/2019 4. Operator & Assignment
25/47
The Comparison Operators Menghasilakn boolean result. Yang termasuk comparison operator:
Ordinal comparison: =
Theinstanceof
Operator Tests the class of an object at runtime. The Equality Comparison Operators: ==
and !=Test for equality and inequality, respectively,returning a boolean value.
-
8/12/2019 4. Operator & Assignment
26/47
Ordinal comparisoni nt p = 9;i nt q = 65;i nt r = 12;f l oat f = 9. 0f ;char c = A ;
Ber i kut i ni akan menghasi l kan t r ue:p < qf < qf rc >= q
-
8/12/2019 4. Operator & Assignment
27/47
Operator instanceof Operator instance of digunakan untuk mengecek class suatu obyek.
Pengecekan dilakukan pada saat runtime.i mpor t j ava. awt . *;
cl ass Compar eTest {
publ i c st at i c voi d mai n( St r i ng [ ] ar gs) {
But t on b = new But t on( Exi t ) ;
bool ean compar e1 = b i nst anceof But t on;
bool ean compar e2 = b i nst anceof Componenet ;
Syst em. out . pr i nt l n( I s b a But t on? + compar e1)
Syst em. out . pr i nt l n( I s b a Component ? + compar e2)
}
}
-
8/12/2019 4. Operator & Assignment
28/47
Operator instanceof Hasil:
I s b a But t on? t r ue
I s b a Component ? t r ue
Argumen sebelah kiri adalah object referenceexpression.
Argumen sebelah kanan adalah class, interface, atauarray
-
8/12/2019 4. Operator & Assignment
29/47
Equality operators Equality can be tested with the operators
equals and not equals:= = equals!= not equals
There are four different types of entitiesthat can be tested:
Numbers Characters Boolean primitives Reference variables to object
-
8/12/2019 4. Operator & Assignment
30/47
Equality for Primitivesclass ComparePrimitives{
public static void main(String [] args) {System.out.println(a ==a);
System.out.println(a ==b);System.out.println(5 != 6);System.out.println(5.0 == 5L);System.out.println(true==false);
}}
-
8/12/2019 4. Operator & Assignment
31/47
-
8/12/2019 4. Operator & Assignment
32/47
The Bitwise Operators: &, ^, and | Provide logical AND, OR and XOR operations
on integral data types.
-
8/12/2019 4. Operator & Assignment
33/47
-
8/12/2019 4. Operator & Assignment
34/47
|
|
-
8/12/2019 4. Operator & Assignment
35/47
-
8/12/2019 4. Operator & Assignment
36/47
Binary Operators: &, |, and ^ AND, OR and XOR operations on logical data types. Semua operan akan dieksekusi.
Operator & True & True = True True & False = False False & True = False False & False = False
Operator | True & True = True True & False = True False & True = True False & False = False
Operator True & True = False True & False = True False & True = True False & False = False
-
8/12/2019 4. Operator & Assignment
37/47
The Short-Circuit Logical Operators Operators && and || Applicable only to boolean values and not integral
types. For an AND operation, if one operand is false, the
result is false, without regard to the other operand.
For an OR operation, if one operand is true, the resultis true, without regard to the other operand.
Jadi, untuk nilai boolean x:
false && X = false true || X = true
-
8/12/2019 4. Operator & Assignment
38/47
-
8/12/2019 4. Operator & Assignment
39/47
-
8/12/2019 4. Operator & Assignment
40/47
-
8/12/2019 4. Operator & Assignment
41/47
-
8/12/2019 4. Operator & Assignment
42/47
The Conditional Operator: ?: known as the ternary operator takes three operands code simple conditions (if/else) into a single expression.
Example:a = x ? b : c;
Aturan: Tipe data b, c dan a sebaiknya sama. Jika tidak sama? Terjadipromosi
Tipe ekspresi x harus boolean Contoh nilai x (6>7) Jika ekspresi x benar maka akan menghasilkan b Jika ekspresi x salah maka akan menghasilkan c
-
8/12/2019 4. Operator & Assignment
43/47
-
8/12/2019 4. Operator & Assignment
44/47
The Assignment Operators set the value of a variable or expression to
a new value. Example:1. byt e x = 2;2. x += 3;3. a = b = c = 0; / / l egal .
-
8/12/2019 4. Operator & Assignment
45/47
Operators Precedence
-
8/12/2019 4. Operator & Assignment
46/47
Operators Precedence (cont.)
-
8/12/2019 4. Operator & Assignment
47/47
Evaluation Order 1. i nt [ ] a = { 4, 4 };
2. i nt b = 1;3. a[ b] = b = 0;
Not e: unt uk assi gnment ber l akuat ur an asosi at i f dar i kanan kek i r i .
1. a[ b] a[ 1]2. b = 03. a[ 1] = 0