Download operator

Document related concepts
no text concepts found
Transcript
Struktur Dasar JAVA
Oleh : Nur Hayatin, S.ST
Teknik Informatika –UMM
2011
Topik
• Variabel
• Operator
Struktur Dasar JAVA
VARIABEL
Variabel
• Digunakan untuk menyimpan nilai/value.
• Variabel = field = attribut.
• Perbedaan antara variabel dengan konstanta :
– Variabel : nilainya dapat diubah
– Konstanta : nilainya tetap
Jenis Variabel
1.
2.
3.
4.
Instance Variables
Class Variables
Local Variables
Parameters
1) Instance Variables
• Disebut juga Non-Static Fields.
• Field dideklarasikan tanpa menggunakan
modifier “static”.
• Setiap object menyimpan state-nya melalui
instance variable.
• Bersifat unik untuk tiap object.
• Dapat diakses dengan menggunakan object
atau instansiasi dari class tempat variabel tsb
dideklarasikan.
2) Class Variables
• Disebut juga sebagai Static Fields.
• Yaitu semua variabel yang dideklarasikan
dengan keyword “static”.
• Class variabel hanya sekali di copy ke memory,
walaupun object yang dibentuk banyak.
• Pengaksesan bisa melalui nama class sehingga
tidak perlu membuat object lagi.
3) Local Variables
• Variabel yang terletak diantara kurung kurawal
buka ({) dan kurung kurawal tutup (}) dari
sebuah method.
• Merupakan temporary state.
• Pengaksesan local variabel hanya bisa
dilakukan di dalam method tsb (tempat
variabel dideklarasikan).
4) Parameter
• Berupa variabel yang ada pada method
signature.
• Digunakan untuk menangkap value/nilai yang
dikirim ke sebuah method.
Syntax Deklarasi Variabel
(1) tipedata namaVar[,namaVar];
(2) namaVar = nilai;
(3) tipedata namaVar=inisial nilai awal;
• Untuk deklarasi variabel dapat menggunakan salah
satu dari tiga model syntax diatas.
• Contoh :
float bilPecahan; (1)
int jumlahBarang, unit, usia, stok; (1)
bilPecahan=10.00; (2)
char huruf=‘A’; (3)
Aturan Penamaan Variabel
1. Case-sensitive.
Ex : count dan Count (berbeda)
2. Harus diawali dengan huruf, $ (dollar), atau _
(underscore)
3. Tidak menggunakan keyword sebagai
identifier.
4. Tidak menggunakan pemisah spasi.
Tips
• Agar kode program anda mudah untuk dibaca dan dipahami.
Caranya : Gunakan nama yang tepat untuk variabel, method,
maupun class.
• Jika nama variabel hanya satu kata, maka sebaiknya ditulis
dengan menggunakan huruf kecil.
Contoh : int total; (recomended)
int Total; (not-recomended)
• Jika terdiri dari banyak kata, maka huruf pertama dari tiap
kata dibuat kapital.
Contoh : int totalBiaya; (recomended)
int Totalbiaya; (not-recomended)
Kesimpulan : variabel
• Secara terminologi JAVA menggunakan kedua
istilah field maupun variabel.
• Instance variable : non-static field
• Class variable : static field
• Local variable : temporary state pada method
• Parameter : variabel yang menyimpan
informasi dari method.
Struktur Dasar JAVA-Variabel
TIPE DATA PRIMITIF
Tipe Data Primitif
• Tipe data yang telah ada pada bahasa
pemrograman.
Tipe Data Primitif di JAVA
1.
2.
3.
4.
Byte
Short
Int
Long
Integral
5. Float
6. Double
7. Boolean
8. char
Floating-point
Tipe Data : Integral
Tipe Data : Floating-Point
Boolean & Char
• Boolean
Diwakili oleh 2 pernyataan : true dan false.
ex :
boolean valid = false;
• Char
Diwakili oleh karakter single unicode (16 bit). Nilai
yang dimasukkan pada char harus diapit tanda
single-quote (‘).
ex :
char nilai = ‘A’;
Default Value (Nilai Default)
• Ketika sebuah variabel dideklarasikan tanpa
nilai awal, maka compiler secara otomatis
akan memberikan nilai default.
• Nilai default tersebut bisa berupa : zero atau
null. Tergantung tipe data dari variabel.
• Compiler tidak dapat memberikan nilai default
pada variabel yang dideklarasikan sebagai
local variabel.
Default Value
Literals
• Nilai yang dituliskan pada variabel.
Literals untuk Integral
LITERAL
OCTAL
HEXA
PREFIX
0
0x
BINARY
0b
• Contoh :
int decVal = 26; // The number 26, in decimal
int octVal = 032; // The number 26, in octal
int hexVal = 0x1a; // The number 26, in hexadecimal
int binVal = 0b11010; // The number 26, in binary
Literals untuk Floating-point
LITERAL
SUFIX
SCIENTIFIC NOTATION
e
FLOAT
F or f
DOUBLE
D or d
• Contoh :
double d1 = 123.4;
double d2 = 1.234e2; // same value as d1, but in scientific
notation
float f1 = 123.4f;
double d = 123.4d;
Literals untuk Char & String
LITERAL
Value
backspace
\b
tab
\t
line feed
\n
form feed
\f
carriage return
\r
double quote
\“
single quote
\’
backslash
\\
Contoh :
char = ‘\b’ // untuk mengakses nilai backspace
char = ‘\n’ // untuk mengakses nilai ganti baris
Struktur Dasar JAVA-Variabel
ARRAY
Definisi
• Sebuah object yang mampu menyimpan
sejumlah nilai dengan tipe data sejenis.
• Panjang array ditentukan ketika array
dideklarasikan dan tidak dapat diubah lagi.
Ilustrasi Array
Penjelasan
• Tiap items pada array disebut element.
• Setiap elemen dapat diakses dengan
menggunakan nomor yang disebut : index.
• Index array dimulai dari 0.
Deklarasi Array
• Syntax untuk deklarasi array :
tipe_data[] nama_array;
• Contoh :
byte[] anArrayOfBytes;
short[] anArrayOfShorts;
long[] anArrayOfLongs;
long anArrayOfLongs[]; //jenis deklarasi array yang lain
Creating
• Setelah array dideklarasikan selanjutnya
memesan sejumlah elemen array dengan
mengunakan keyword new.
• Syntax create array :
nama_array = new tipe_data[jumlah elemen array];
• Contoh :
anArray = new int[10]; // create an array of integers
Inisialisasi
• Inisialisasi : pemberian nilai
• Untuk melakukan inisialisasi pada array dapat
menggunakan index.
• Contoh :
anArray[0] = 100; // inisialisasi elemen array pada index ke-0
anArray[1] = 200; // inisialisasi elemen array pada index ke-1
anArray[n] = 300; // inisialisasi elemen array pada index ke-n
Pengaksesan
• Pengaksesan bertujuan untuk mendapatkan
value yang disimpan pada elemen array.
• Pengaksesan elemen array menggunakan
index.
• Contoh :
// Pengaksesan elemen array pada index ke-0 dan ke-1
System.out.println("Element 1 at index 0: " + anArray[0]);
System.out.println("Element 2 at index 1: " + anArray[1]);
//pengaksesan elemen dapat juga ditampung ke variabel lain
int a = anArray[3]; //mengakses elemen pada index ke-3
Create & Inisialize
• Ketika create array dapat sekaligus dilakukan
inisialisasi array.
• Contoh :
int[] anArray = {100, 200, 300, 400, 500, 600, 700, 800, 900, 1000};
• Jumlah elemen array secara otomatis dikenali oleh
compiler dari jumlah data yang ada diantara tanpa
kurung kurawal (tiap data dipisahkan dengan koma).
Contoh Code Program
• ArrayDemo.java
Array Multi Dimensi
• Deklarasi array multi dimensi secara syntax
sama seperti deklarasi array satu dimensi.
Hanya saja ditambahkan tanda [] sejumlah
dimensi yang ingin dibentuk.
• Contoh program :
MultiDimArrayDemo.java
Length
• Digunakan untuk mengetahui panjang array.
Contoh penggunaan :
System.out.println(anArray.length);
Copying Array
• Copy array digunakan untuk mengcopy
elemen array ke array yang lain.
• Menggunakan method arraycopy yang ada
pada class System.
Syntax Copying Array
• Copying array :
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
• Keterangan :
src
srcPos
dest
destPos
length
: array sumber/asal
: index awal untuk array asal
: array tujuan
: index awal untuk array tujuan
: panjang elemen yang akan di copy
Contoh Program
• ArrayCopyDemo.java
Self-checking Questions
1. Jelaskan perbedaan antara instance-variables
dengan local variables?
2. Kenapa class variables bisa langsung diakses
melalui classnya (tanpa membuat object)?
3. Sebutkan 8 primitif tipe data yang ada pada
java? Tipe data yang manakah yang tidak ada
pada pemrograman sebelumnya?
4. Sebutkan array properti yang digunakan
untuk mengetahui panjang sebuah array?
Team Work!
Jawablah pertanyaan berikut berdasarkan program
FreshJuice.java!
1. Sebutkan object dari class tersebut.
2. Sebutkan baris perintah deklarasi instance-variables.
3. Sebutkan baris perintah deklarasi class-variables.
4. Sebutkan baris perintah deklarasi local-variables.
5. Sebutkan baris perintah pengaksesan instance-variables.
6. Sebutkan baris perintah pengaksesan class-variables.
7. Sebutkan baris perintah pengaksesan local-variables.
Struktur Dasar JAVA
OPERATOR
Operator
• Sebuah simbol yang menjalankan operasi dengan
satu, dua, maupun tiga operand.
Operand
1 + 2 * 3
Operator
Operand & Operator
• Berdasarkan jumlah operand, operator
dibedakan menjadi 3 : unary, binary, tertiary.
Operand & Operator (cont.)
• Unary
operator yang melibatkan 1 operand.
ex : bilangan = -1;
• Binary
operator yang melibatkan 2 operand.
ex : bilangan = 1+2;
• Tertiary
operator yang melibatkan 3 atau lebih operand.
ex : bilangan = 1+2*3;
Jenis Operator
1.
2.
3.
4.
5.
6.
7.
8.
Assignment
Aritmatik
Penugasan
Unary
Relasi
Conditional
Bitwise
Bit-shift
Assignment (=)
• Operator yang paling sering digunakan.
• Merupakan simple assingment operator yang
menggunakana simbol “=“ (sama dengan).
• Fungsinya : meng-assign atau melimpahkan
value yang ada disebelah kanan ke operand
yang ada di sebelah kiri.
• Contoh :
int speed = 0;
Aritmatik
Operator
+
*
/
%
Keterangan
Penjumlahan
Pengurangan
Perkalian
Pembagian
Sisa Pembagian
• Contoh program : ArithmeticDemo.java
Aritmatik (+)
• Operator + juga dapat digunakan untuk
penggabungan dua string.
• Contoh program : ConcatDemo.java
Operator Penugasan
Operator
=
+=
-=
*=
/=
%=
Keterangan
Pemberian nilai
Penambahan bilangan
Pengurangan bilangan
Pengalian bilangan
Pembagian bilangan
Pemerolehan sisa
pembagian
Operator Penugasan (cont.)
• Contoh :
a = 10;
 a+=2;
a-=2;
a*=2;
a/=2;
a%=2;
Hasilnya
Hasilnya
Hasilnya
Hasilnya
Hasilnya
a=12
a=8
a=20
a=5
a =0
Unary Operator
Operator
+
++
-!
Keterangan
Untuk operand positif
Untuk operand negatif
Penambahan dg 1
Pengurangan dg 1
Negasi dr nilai boolean
• Contoh program : UnaryDemo.java
PrePostDemo.java
Operator Penambahan (Increment)
Contoh : x = 1;
y = x++;  Hasil : y = 1, x = 2
y = ++x;  Hasil : y = 2, x = 2
Operator Pengurangan (Decrement)
Contoh : x = 4;
y = x--;  Hasil : y = 4, x = 3
y = --x;  Hasil : y = 3, x = 3
Operator Relasi/Pembandingan
Operator
>
>=
<
Keterangan
Lebih besar
Lebih besar samadengan
Lebih kecil
<=
Lebih kecil sama-dengan
==
!=
Sama-dengan (equal to)
Tidak sama-dengan
• Contoh program : ComparisonDemo.java
Conditional Operator
Operator
&&
||
Keterangan
Conditional AND
Conditional OR
• Dapat juga menggunakan ekspresi ?: yang
dikenal sebagai ternary operator yaitu
operator yang memiliki tiga operand.
• Contoh program : ConditionalDemo1.java
ConditionalDemo2.java
Conditional Operator Bitwise
Operator
~
&
^
|
Keterangan
Not/negasi
AND Operation
Exclusive OR Operation
Inclusive OR Operation
Conditional Operator Bit-shift
Operator
<<
>>
>>>
Keterangan
Geser 1 bit ke kiri
Geser 1 bit ke kanan
Geser kanan tak bertanda
Precedence Operator
• Merupakan level operator yang menentukan
prioritas sebuah operator untuk dijalankan
terlebih dahulu ketika dalam sebuah baris
terdapat lebih dari satu operator.
EXPRESSIONS, STATEMENT, BLOCK
Expressions
• Gabungan dari operator dan operand maupun
sebuah literal/variabel yang menghasilkan
suatu nilai.
• Contoh :
1+2
Statement
• satu atau lebih baris kode yang diakhiri
dengan semicolon (;).
ex : system.out.print(“Hello”);
Blok
• Satu atau lebih pernyataan yang berada
diantara tanda kurung kurawal buka dan tutup
({ … }).