Anda di halaman 1dari 33

Algoritma & Pemrograman 1

Dasar-Dasar Pemrograman Java


Analisa Coding (1):
public class Hello
{
/**
* My first java program
*/
public static void main(String[] args) {
//menampilkan string ”Hello world” pada screen
System.out.println("Hello world!");
}
}
Analisa Coding (2):
public class Hello
{
atau
public class Hello {

 Mengindikasikan nama class Hello


 Class menggunakan akses khusus publicclass punya akses
bebas ke class yang lain dari package yang lain pula
 Packagekumpulan class”
 {awal blok
Analisa Coding (3):
/**
* My first java program
*/
Or
//menampilkan string”Hello world” pada screen

 Komentardiabaikan saat running


Analisa Coding (4):
public static void main(String[] args) {
Or
public static void main(String[] args)
{

 Mengindikasikan nama suatu method dalam class Hello yang


bertindak sebagai method utama
 Method utama adalah titik awal dari suatu program java
 Semua program kecuali applet yang ditulis dalam bahasa java
dimulai dengan method utama
Analisa Coding (5):
System.out.println("Hello world!");

 Menampilkan teks

}
}
 u/ menutup method utama dan masing” class
secara berurutan
Java Identifier/Var:
 Pengidentifikasian tanda yang mewakili nama” vaiabel,
method, class dsb
 c/ Hello, main, System, out.
 Pendeklarasian Java adalah case-sensitivepengidentifikasi
Hello tidak sama dengan hello
 Pengidentifikasi ditandai:
 Hurufdapat berupa huruf besar maupun huruf kecil.
 Underscore “_”
 Tanda dollar “$”
 Karakter 0-9
 Tidak boleh kata kunci dalam java seperti class, public, void, dsb.
Java Keyword:
 pengidentifikasi yang telah dipesan untuk didefinisikan sebelumnya oleh java
untuk tujuan tertentu
Java Literals/Tipe Variabel:
 Tanda bahwa tidak terjadi perubahan/konstan
 Macam”:
 Integer Literals
 Floating-Point Literals
 Boolean Literals
 Character Literals
 String Literals
Integer Literals:
 Macam:
 desimal (berbasis 10)
 heksadesimal (berbasis 16)
 oktal (berbasis 8)
 Dalam penggunaan tipe data integer pada program,
kita harus mengikuti aturan penggunaan beberapa
notasi khusus.
 c/ angka 12desimal=12; heksadesimal=0xC;
oktal=014
 Default tipe data=int
Floating-Point Literals:
 Mewakili bentuk desimal dengan bagian yang
terpisah
 c/ 3.1415
 Default tipe data=float
Boolean Literals:
 Bernilai T or F
Character Literals :
 Diwakili oleh karakter single Unicod 16-bit &
8-bit ASCII character set
 Unicode memungkinkan pengunaan symbol
dan karakter khusus dari bahasa lain.
 c/ ‘a’single quote delimiters
String Literals:
 String literals mewakili beberapa karakter
 symbol double pute(“ ”)/ double quotes
 c/ “Hello World”.
Tipe Data Primitif (1):
 Boolean
 bentuk logika T or F
 c/ boolean result = true;
 Char
 Bentuk teks
 Simbol single Unicode/sigle quotes(’ ’)
 c/ ‘a’ //Huruf a or ‘\t’ //A tab
 Untuk menampilkan karakter khusus seperti ' (single
quotes) atau " (double quotes), menggunakan karakter
escape \
 c/ '\'' //untuk single quotes or '\"' //untuk double quotes
Tipe Data Primitif (2):
 IntegralByte; Short; Int; long (integral)
 tipe data yang terintegrasi dalam java menggunakan tiga
bentukdesimal, oktal dan heksadesimal
 c/ 2 //nilai desimal 2
077 //angka 0 pada awal pernyataanoktal
0xBACC //karakter 0x  heksadesimal
 d/ range sbb:
Tipe Data Primitif (3):
 Floating
PointDouble; float
 F or f //(float) & D or
d //(double)
 Range:
Variabel (1):
 item yang digunakan data untuk menyimpan
pernyataan object
 punya tipe data dan nama var
 tipe datatipe dari nilai yang dapat dibentuk oleh
variabel itu sendiri
 nama variabelpunya aturan untuk
mengidentifikasikan
 c/ <data tipe> <name> [=initial value];
Variabel (2):
public class VariableSamples
{
public static void main( String[] args ){
// result dan tipe data boolean
boolean result;
// option dan tipe data char
char option;
//menandai 'C' sebagai option
option = 'C';
//grade, double tipe data dan telah di inisialisasi to 0.0
double grade = 0.0;
}
}
Variabel (3): Menampilkan Data var
 Dengan:
 System.out.println()
 System.out.print()

public class OutputVariable


{
public static void main( String[] args ){
int value = 10;
char x;
x = ‘A’;
System.out.println( value );
System.out.println( “The value of x=“ + x );
}
}
Variabel (4):
Reference Variables vs. primitif Variables
 Variabel primitif
 punya tipe data primitif
 Menyimpan data dalam lokasi memori yang
sebenarnya dimana variabel tersebut berada
 Variabel Reference
 Menyimpan alamat dalam lokasi memori, dengan
menunjuk ke lokasi memori dimana data
sebenarnya berada
Variabel (4):
Reference Variables vs. primitif Variables
 c/ int num = 10;
String name = "Hello“;
 primitif variable num
datanya berada dalam
lokasi dimana variabel
berada
 reference variable name
variabel hanya menunjuk
alamat dimana data
tersebut benar-benar ada
Operators Java:
 operator arithmatika
 Operator Increment&Decrement
 operator relasi
 operator logika
 operator kondisi
operator arithmatika (+ * / % -)
 int i = 37; int j = 42; double x = 27.475; double y = 7.22;

i + j = 79 ; x + y = 34.695
Subtracting...
i - j = -5 ; x - y = 20.255
Multiplying...
i * j = 1554 ; x * y = 198.37
Dividing...
i/j=0; x / y = 3.8054
Computing the remainder...
i % j = 37 ; x % y = 5.815
Mixing tipes...
j + y = 49.22 ; i * x = 1016.58
Operator Increment++ & Decrement--
 Operator ini dapat ditempatkan sebelum or sesudah operator
 count = count + 1; //++ nilai count d nilai 1 ini= count++
 Ketika digunakan sebelum operand akan di+ nilai 1
int i = 10, int j = 3; int k = 0;
k = ++j + i; //akan menghasilkan k = 4+10 = 14
 Ketika digunakan setelah operandnilai variabel yang lama akan
digunakan lebih dulu terhadap pernyataan dimana dia ditambahkan
int i = 10, int j = 3; int k = 0;
k = j++ + i; //akan menghasilkan k = 3+10 = 13
Operator Relasi (>;>=;<;<=;==;!=)
 int i = 37; int j = 42; int k = 42;
Lebih besar dari...
i > j = false ; j > i = true ; k > j = false
Lebih besar dari atau sama dengan...
i >= j = false ; j >= i = true ; k >= j = true
Lebih kecil dari...
i < j = true ; j < i = false ; k < j = false
Lebih kecil dari atau sama dengan...
i <= j = true ; j <= i = false ; k <= j = true
Sama dengan...
i == j = false ; k == j = true
Tidak sama dengan...
i != j = true ; k != j = false
Operator Logika (1)
 && (logika AND) dan & (boolean logika AND)
 && mensupports short-circuit evaluations (atau evaluasi perbagian);
& tidak

int i = 0; int j = 10; boolean test= false;

test = (i > 10) && (j++ > 9);


i= 0; j= 10; test=False
test = (i > 10) & (j++ > 9);
i= 0; j= 11; test=False
Operator Logika (2)
 || (logika OR) dan | (boolean logika inclusive OR)

int i = 0; int j = 10; boolean test= false;

test = (i < 10) || (j++ > 9);


i= 0; j= 10; test=True
test = (i < 10) | (j++ > 9);
i= 0; j= 11; test=True
Operator Logika (3)
 ^ (boolean logika ExclusiveOR )

boolean val1 = true; boolean val2 = true;


System.out.println(val1 ^ val2); F
val1 = false; val2 = true;
System.out.println(val1 ^ val2); T
val1 = false; val2 = false;
System.out.println(val1 ^ val2); F
val1 = true;
System.out.println(val1 ^ val2); T
Operator Logika (4)
 ! (logika NOT)

boolean val1 = true; boolean val2 = false;


System.out.println(!val1); F
System.out.println(!val2); T
Operator Logika (5)
 Operator Kondisi(?:)

String status = ""; int grade = 80;


status = (grade >= 60)?"Passed":"Fail";
System.out.println( status );  Passed
Operator Precedence
 perintah yang
dilakukan compiler
ketika melakukan
evaluasi terhadap
operator, untuk
mengajukan perintah
dengan hasil yang tidak
ambigu/ hasil yag jelas

6%2*5+4/2+88-10 
((6%2)*5)+(4/2)+88-10;
Tugas:
1. a / b ^ c ^ d – e + f – g *
h+i
2. 3 * 10 *2 / 15 – 2 + 4 ^
2^2
3. r ^ s * t / u – v + w ^ x –
y++
4. number 1 = 10 ; number
2 = 23 ;number 3 = 5