Anda di halaman 1dari 38

Primitif Tipe data

dan Operator
Dosen : Fajar Y. Zebua

Penamaan dalam Java


Java classes, methods, dan Variables semuanya mempunyai nama.

Penamaan didalam java boleh memiliki kombinasi dari letters,


numbers, dan Underscore character(_), tetapi karakter pertama dari
penulisan nama haruslah dimulai dengan huruf.
Penulisan nama didalam java minimal terdiri dari satu karakter, dan
tidak memiliki batasan maksimum.

Contoh penulisan nama yang dibolehkan didalam java.


Hello ThisIsTest
ABC
A1B2 a_12
Contoh penulisan nama yang tidak dibolehkan didalam java.
1Day _toupper
dan lain lain
ditambah dengan reserved keywords

Pemrograman Berorientasi Objek

Penamaan dalam Java


Hasil dari sebuah konfrensi :

Nama class java, selalu dimulai dengan huruf besar.

Nama Methods dan Variables, dengan huruf kecil.

Nama Class, Methods dan Variabel jika terdiri dari dua atau lebih
suku kata, awal kata ke dua dan seterusnya awali dengan huruf
besar.
Contoh untuk class.
HelloWorld
ThisIsTest
Contoh untuk methods dan variables.
getString
toUpperCase

statusPerkawinan

Pemrograman Berorientasi Objek

Penamaan dalam Java


Reserved Keywords
abstract

continue

float

long

short

try

boolean

default

for

native

static

void

break

do

goto

now

super

volatile

byte

double

if

null

synchronized

while

case

else

implements

package

this

catch

extends

import

private

throw

char

false

instanceof

protected

throws

class

final

iInt

public

transient

const

finally

interface

return

true

Pemrograman Berorientasi Objek

Tipe Data

Bahasa pemrograman java memiliki 2 katagori tipe data:


primitive dan reference. Sebuah variabel dengan tipe
primitive memuat sebuah nilai tunggal dengan format
dan ukuran yang sesuai tipenya. Sedangkan Reference
tipe data merupakan sebuah tipe data berjenis class,
yang dapat memiliki fungsi atau metode.

Pemrograman Berorientasi Objek

Tipe Data
Tipe Data Primitive
Kata Kunci

Keterangan

Size/Format
(integers)

byte

Byte-length integer

8-bit two's complement

short

Short integer

16-bit two's complement

int

Integer

32-bit two's complement

long

Long integer

64-bit two's complement

(real numbers)
float

Single-precision floating point

32-bit IEEE 754

double

Double-precision floating point

64-bit IEEE 754

(other types)
char

A single character

16-bit Unicode character

boolean

A boolean value (true or false)

true or false

Pemrograman Berorientasi Objek

Tipe Data
Contoh Tipe Data Primitive
Contoh

Tipe Data

178

Int

8864L

long

37.266

double

37.266D

double

87.363F

float

26.77e3

double

'c'

char

True

boolean

False

boolean

Secara umum, sederet digit dengan tanpa titik decimal (dalam notasi Internasional)
atau koma decimal (notasi Indonesia) ditipekan sebagai sebuah integer. Kita juga
dapat menspesifikasi sebuah integer Long dengan menempatkan 'L' atau 'l' setelah
angkanya. 'L' ditunjukkan agar tidak membingungkan dengan digit '1'. Sebuah deretan
digit dengan ada sebuah titik desimalnya adalah bertipe double. Kita juga dapat
menspesifikasi sebuah float dengan menempatkan 'f' atau 'F' setelah angka. Sebuah
karakter harfiah adalah sebuah karakter Unicode tunggal diantara tanda petik. Dua
karakter Boolean adalah true dan false (benar dan salah)

Pemrograman Berorientasi Objek

Tipe Data
Tipe Data Reference
Arrays, class, dan interface adalah tipe-tipe referensi. Nilai dari
variable tipe referensi, berbeda dengan tipe primitive, adalah
sebuah referensi untuk (sebuah alamat dari) nilai atau kumpulan
nilai dari nilai-nilai yang ditunjukkan oleh variable.

Pemrograman Berorientasi Objek

Variabel Tipe Data

Variabel Primitif adalah variabel dengan tipe data primitif. Mereka


menyimpan data dalam lokasi memori yang sebenarnya di mana
variabel tersebut berada.

contoh: int num = 10;

Variabel reference adalah variabel yang menyimpan alamat dalam


lokasi memori yang menunjuk ke lokasi memori di mana data
sebenarnya berada.

contoh: String nama = adi

Pemrograman Berorientasi Objek

Konstanta dan Variabel


Konstanta adalah sebuah tempat penyimpanan data didalam memory
komputer yang mana nilai yang ada didalamnya sudah tidak dapat
berubah selama program dijalankan. Sedangkan
Variabel sebaliknya, dimana nilai-nya dapat berubah selama program berjalan.
Tipe data didalam java, yang tergolong kedalam tipe data primitif :

Tipe

Bit

Range / Jangkauan

boolean

True or false

char

16

\u0000 to \uFFFF

byte

-128 127

short

16

-32,768 32,767

int

32

-2,147,483,648 2,147,483,647

long

64

9,223,372,036,854,775,808...
9,223,372,036,854,775,807

float

32

-3.4e+383.4e+38

double

64

-1.7e+3081.7e+308
Pemrograman Berorientasi Objek

Sub-Tipe
-

Integer

Floating
Point
10

Konstanta dan Variabel


Integer Konstanta dan Variabel adalah bilangan bulat posistif atau
negatif dengan range yang sudah disebutkan pada tabel
sebelumnya.
Contoh yang dibolehkan:
12
0
-123456
9999999999L
// tipe long
Contoh yang tidak diperbolehkan :
1,024
// memiliki tanda berkoma
9999999999
// terlalu besar untuk tipe int
Deklarasi variabel integer sbb:
int var1, var2;
short var3;
int var4 = 100
// deklarasi dan inisialisasi nilai 100 ke var4
Pemrograman Berorientasi Objek

11

Konstanta dan Variabel


Real Konstanta dan Variabel adalah bilangan pecahan posistif atau
negatif dengan range yang sudah disebutkan pada tabel
sebelumnya.
Contoh yang dibolehkan:
12.
// tipe double
12E2
// tipe double
12.0e2
// tipe double
3.14159F
// tipe float
Contoh yang tidak diperbolehkan :
1,024.0
// memiliki tanda berkoma
1.2e108F
// terlalu besar untuk tipe float
Deklarasi variabel real sbb:
double x;
float pi = 3.14159F;

Pemrograman Berorientasi Objek

12

Konstanta dan Variabel


boolean Konstanta dan Variabel adalah data yang berisi nilai dua
kemungkinan, yaitu nilai benar atau salah.
Contoh yang dibolehkan:
true
false
Deklarasi variabel boolean sbb:
boolean test = false;
character Konstanta dan Variabel adalah character dan string
didalam java menggunakan unicode character set. Dimana
disimpan didalam bentuk 16 bit memori, yang memungkinkan
menyimpan sebanyak 65,536 karakter. Nilai Karakter ditandai
dengan diapit dengan dengan tanda petik tunggal. Data ini juga
dapat direpresentasikan dengan escape character, seperti
terlihat pada tabel dibawah ini. Sedangkan string diapit dengan
tanda petik ganda.
Pemrograman Berorientasi Objek

13

Konstanta dan Variabel


Contoh yang dibolehkan:
a
1
abc C
Deklarasi variabel char sbb:
char test = A;
string test = Universitas Respati Yogyakarta;

Pemrograman Berorientasi Objek

14

Konstanta dan Variabel


Keeping Constants Consisten in a Program adalah bagaimana
membentuk nilai konstanta menjadi tetap dan tidak dapat berubah
sepanjang program berjalan. Untuk itu dapat dilakukan dengan
menggunakan keyword final didepan tipe data dari sebuah
konstanta. Dan nama constanta menggunakan huruf besar semua
Contoh program sbb:
1.
2.
3.
4.
5.
6.

public class Constant {


public static void main(String[] args) {
final float PI = 3.14159F;
Syatem.out.println(2*pi = + 2*PI);
}
}

Hasilnya sbb:
2*pi = 6.28318
Jika antara baris 3 & 4 disisipkan perintah sbb:
PI = 3.0F
Hasilnya sbb:
cant assign a value to final variable: PI

1 error

Pemrograman Berorientasi Objek

15

Konstanta dan Variabel


Latihan :
Pertanyaan 1 8 jawablah dengan pernyataan valid atau tidak
valid dan berikan alasannya kalau tidak valid.
1.
2.
3.
4.

10.0
123E-5

Siapa kamu?

5.
6.
7.
8.

-100,000
T
3.14159
True

Pertanyaan 9 11, apakah sama atau tidak nilai real disisi kiri
dengan disisi kanan?
9.
10.
11.

4650.;
-12.71;
0.0001;

4.65E+3
-1.27E1
1.0e4

Pertanyaan 12 15, apakah valid atau tidak penulisan nama


berikut, jika tidak berikan alasannya?
12.
13.

isVector
MyNewApp

14.
15.

2ndChance
MIN_DISTANCE

Pemrograman Berorientasi Objek

16

Konstanta dan Variabel


Latihan :
Pertanyaan berikut, jawablah dengan pernyataan valid atau tidak
valid dan berikan alasannya kalau tidak valid, untuk penulisan
deklarasi variabel dan konstanta berikut.
16.
int firstIndex = 20;
17.
18.

Final short MAX_COUNT = 100000;


Char test = Y;

Pertanyaan terakhir, apakah legal atau tidak program dibawah ini,


jika legal apa hasil dari program tersebut, jika tidak dimana letak
kesalahannya?
int I, j;
final int k = 4;
I = k * k;
j = I / k;
k = I + j;

Pemrograman Berorientasi Objek

17

Operator

Operator merupakan simbol yang biasa digunakan dalam menulis


suatu penyataan (statement) dalam bahasa pemrograman apapun.
Operator akan melakukan suatu operasi terhadap operand sesuai
dengan fungsinya. Contoh operasi antara lain penjumlahan,
pengurangan, pembagian dan sebagainya.
3+8*4
3 8 4 adalah operand
+ * adalah Operator

Pemrograman Berorientasi Objek

18

Operator

Operator Penugasan

Operator ini adalah operator yang paling sederhana dan hanya dilambangkan
dengan karakter =. Operator ini digunakan untuk menugaskan suatu nilai ke suatu
variabel. Contoh :
int hitung = 4;

yang unik dari operator ini dalam Java adalah kita dapat menggunakan operator ini
secara berantai dalam suatu ekspresi, contoh:

int a, b, c;
a = b = c = 99;

Bentuk Umumnya sebagai berikut:

variable_name = expression;
yaitu : menyimpan nilai
variable_name

dari

Pemrograman Berorientasi Objek

expression

ke

dalam

19

Operator

Operator Matematika

Operator ini digunakan dalam ekspresi matematika. Berikut ini daftar operator
matematika yang dikenal dalam Java:

Type

Symbol

Algebraic Expression

Java Expression

Additon

a+b

a+b

Subtraction

ab

ab

Multiplication

ab

a*b

Division

a / b or a b

a/b

Modulus (Remainder)
%
a mod b
a%b
Nilai dari ekspresi dapat berupa proses kalkulasi matematik dimana kita sebut
dengan assignmnet operator. Contoh

a = a + 10

Pemrograman Berorientasi Objek

20

Operator

Superioritas Operator.
1.

Operator dapat dikombinasikan ke dalam ekspresi yang kompleks


result

total + count / max - offset;

1.

Operator memiliki superioritas yang terdefinisi secara baik, yang menentukan


urutan mereka dievaluasi

2.

Perkalian, pembagian dan remainder dievaluasi sebelum pengurangan,


penjumlahan dan penggabungan string

3.

Operator aritmatik dengan superioritas sama dievaluasi dari kiri ke kanan

4.

Kurung dapat digunakan untuk memaksa urutan evaluasi

Contoh :

a + b + c + d + e
1
2
3
4

a + b * c - d / e
3
1
4
2

a / (b + c) - d % e
2
1
4
3

a / (b * (c + (d - e)))
4
3
2
1

Pemrograman Berorientasi Objek

21

Operator

Numeric Promotion of Operands

Adalah sebuah aturan dari hasil sebuah perhitungan matematik dimana


atruran tersebut adalah:
1.
2.
3.
4.

Jika dalam operand tersebut terdapat nilai double maka operand lain akan di
konvert ke nilai double
Selain itu, jika dalam operand tersebut terdapat nilai float maka operand lain
akan di konvert ke nilai float.
Selain itu, jika dalam operand tersebut terdapat nilai long maka operand lain
akan di konvert ke nilai long
Selain itu, semua operand akan di konvert ke nilai int.

Contoh :
Expression Result
1. 1 + 1 / 4
1
2. 1.0 + 1 / 4
1.0
3. 1 + 1.0 / 4
1.25
Pemrograman Berorientasi Objek

22

Operator

Ilustrasi Program

1.

public class TestPromotion {

2.

public static void main(String[] args) {

3.

System.out.println(1 + 1/4);

4.

System.out.println(1.0 + 1/4);

5.

System.out.println(1 + 1.0/4);

6.

7.

Jika dikompile dan dijalankan akan menghasilkan sbb:


C:\>javac TestPromotion.java
C:\>java TestPromotion
1
1.0
1.25

Pemrograman Berorientasi Objek

23

Operator

Assignment Conversion - Casting Conversion

Terkadang kita perlu melakukan Assignment Conversion (konversi terhadap


data dari satu tipe data ketipe data yang lain), konversi harus dilakukan secara
hati-hati, untuk menhindari terjadinya kehilangan data. Adapun jenis assignment
conversion ini adalah
1.Widening Conversion : perubahan dilakukan dari tipe data yang kecil ketipe
data yang lebih besar. Contoh :
int x = 4;
double y;
y = x;
// legal y = 4.0
2.Narrowing Conversion : perubahan dilakukan dari tipe data yang besar
ketipe data yang lebih kecil. Contoh :
int x;
double y=1.25;
x = y;
// illegal, karena y bilangan pecahan.
Pemrograman Berorientasi Objek

24

Operator

Assignment Conversion - Casting Conversion

Untuk mengatasi masalah tersebut, maka perlu dilakukan pemaksaan


tipe data dengan menggunakan teknik Casting, yaitu dengan
memberikan tipe data lain pada data yang ingin dirubah tipenya.
Contoh :
x = (int) y;
Contoh Program sbb:
1.public
2.
3.
4.
5.
6.

class TestCast {
public static void main(String[] args) {
double x = 3.99,
y = 1.1e38
System.out.println((int) x = + (int) x);
System.out.println((int) y = + (int) y);
}

7.}

Hasil dari program diatas dbb:


(int) x = 3
(int) y = 2147483647

// nilai maksimal int, y lebih besar dari hasil

Pemrograman Berorientasi Objek

25

Operator

Assignment Conversion - Casting Conversion

Latihan :
Perhatikan potongan program dibawah ini, legal atau tidak, hasil dari
potongan program tersebut. Jika legal hasilnya seperti apa, jika
tidak baris mana yang salah, dan berikan solusinya.
1.

int x = 16, y = 3;
double result;
result = x + y / 2.0;

2.

int x = 16, y = 3;
int result;
result = x + y / 2.0;

Pemrograman Berorientasi Objek

26

Operator

Assignment Statement & Assignment Operator

Java juga memiliki spesial assingment operators dengan


mengkombinasikan assignment dengan binary operator menjadi
sebuah ekpresi tunggal.
1.

Assignment Statement
a = a + 5;
dapat digantikan dengan menggunakan Addition assignment
operator +=. Sehingga dituliskan sbb:
a += 5;
2.Arithmatic Assignment Operators
Assignment Operators

Sample Expression

Expanded Expression

Result

Assume: int a = 3, b = 11;


+=

a += 3

a=a+3

-=

a -= 2

a=a2

*=

a *= 4

a=a*4

12

/=

a /= 2

a=a/2

b %= 3

b=b%3

%=

Pemrograman Berorientasi Objek

27

Operator

Operator Increment dan Decrement

Java memiliki unary Increment Operator (++) dan unary Decrement


Operator (--). Biasanya data disimpan dalam bentuk penambahan nilai
integer dengan satu.
Bila anda perhatikan maka pernyataan ini akan sama maknanya,
walaupun menggunakan cara yang berbeda-beda.
c = c + 1;
c += 1;
c++;
Tabel : Increment and Decrement Operator
Operator

Sample Expression

Expanded Expression Result

preincrement

++a

Hasil cetak setelah a ditambah 1

postincrement

a++

Hasil cetak sebelum a ditambah 1

Predecrement

--a

Hasil cetak setelah a dikurangi 1

postdecrement

a--

Hasil cetak sebelum a dikurangi 1

Pemrograman Berorientasi Objek

28

Operator

Operator Increment dan Decrement

Contoh Program :
1.
2.
3.
4.
5.
6.

public class TestIncrement {


public static void main(String[] args) {
int i = 4, k = 0;
k = i-- + 2 * i * ++i;
System.out.println( i = + i );
System.out.println( k= + k );

7.

k = --i + 2 * i * i++;
System.out.println( i = + i );
System.out.println( k= + k );

8.
9.
10.

11.
12.

Pemrograman Berorientasi Objek

Hasilnya :
4
28
4
21
29

Operator

Logika
Apabila 2 operand bernilai boolean (Contoh A dan B) dan keduanya digunakan dalam
operasi AND, OR, XOR, dan NOT maka nilai yang dihasilkan antara lain:

Operasi AND hanya akan menghasilkan nilai true apabila kedua operand (A dan B) bernilai true;
Operasi OR hanya akan menghasilkan nilai false apabila kedua nilai operand false;
Operasi XOR hanya akan menghasilkan nilai true apabila salah satu operand-nya (bukan keduaduanya) bernilai true; sedangkan
Operasi NOT akan menghasilkan negasi atau kebalikan dari nilai sebelumnya.

Contoh Program : DemoOperatorLogika.java

Pemrograman Berorientasi Objek

30

Operator

Relasi
Relational and Logical Operator adalah dua buah type operator yang
menghasilkan nilai boolean true atau false. Biasanya digunakan untuk
mengontrol banyak pengulangan dan struktur percabangan didalam java.
Tabel Relational Operators:

Operator

Sample Expression

Meaning

Relatinal operators:
>
<
>=
<=

x>y
x<y
x >= y
x <= y

True if x > y
True if x > y
True if x y
True if x y

Equality operators:
==
!=

x == y
x != y
Pemrograman Berorientasi Objek

True if x = y
True if x y
31

Operator

Relasi

Contoh Program: RelasiDemo.java

Pemrograman Berorientasi Objek

32

Contoh Program:
1.
2.
3.
4.
5.
6.
7.
8.

public class TestAnd {


public static void main(String[] args) {
int i = 10, j = 9;
boolean test;
test = i > 10 && j++ > 10;
System.out.println(i);
System.out.println(j);
System.out.println(test);

9.

test = i > 10 & j++ > 10;


System.out.println(i);
System.out.println(j);
System.out.println(test);

10.
11.
12.
13.

14.
15.

}
Pemrograman Berorientasi Objek

33

Operator

Operator kondisi (?:)

?: merupakan operator ternary.

Sintaks; exp1 ? Exp2 : exp3

Pemrograman Berorientasi Objek

34

Standard Input and Output


Pada bahasa pemrograman selalu digunakan sesuatu untuk
membaca data untuk diproses, dan menulis kembali dalam bentuk
cetakan setelah memperoleh sebuah hasil. Ini lah yang kita sebut
standart input dan output.
Pemrograman java memiliki tiga standar input dan output objek. Yaitu:
1.System.in : merepresentasikan standard input stream, biasanya
melalui keyboard.
2.System.out : merepresentasikan standard output stream, biasanya
melalui layar monitor.
3.System.err : merepresentasikan standard error sttream, khusunya
untuk menampilkan pesan-pesan error pada program.

Pemrograman Berorientasi Objek

35

Standard Input and Output


Using the standard input stream:
Digunakan untuk membaca data dari keyboard, atau dari media input
lainnya. Membaca data menggunakan metode standar java
sangatlah komplek. Pada kesempatan ini kita akan mencoba
menggunakan class BufferedReader dengan InputStreamReader untuk
membaca data pada program-program berikut.
Untuk menggunakan class ini dan metode yang terdapat didalamnya
haruslah mengimport paket java.io kedalam program yang kana
dibuat.
Metoda yang digunakan sbb:
readLine()
Contoh penggunaan sbb:
BufferedReader stdin = new BufferedReader(new
InputStreamReader(System.in));

stdin.readLine();
Pemrograman Berorientasi Objek

36

Standard Input and Output


Contoh Program:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.

import java.io.*;
public class ReadStdIn {
public static void main(String[] args) throws IOException {
double v1; int i1; float b1;
BufferedReader stdin = new BufferedReader(new
InputStreamReader(System.in));
try {
System.out.println("Enter a double value: ");
v1 = Double.parseDouble(stdin.readLine());
System.out.println("Value = " + v1);
System.out.println("Enter a int value: ");
i1 = Integer.parseInt(stdin.readLine());
System.out.println("Value = " + i1);
System.out.println("Enter a float value: ");
b1 = Float.parseFloat(stdin.readLine());
System.out.println("Value = " + b1);
}
catch(Exception e) {
System.out.println("Error : " + e);
}
}
}
Pemrograman Berorientasi Objek

37

Standard Input and Output


Latihan :
Buatlah sebuah class konversi derajat Fahrenheit ke derajat Kelvins. Dimana
derajat Fahrenheit diinput dari keyboard dengan rumus konversi sbb:
Dejarat Kelvin = ( 5. / 9. ) * (Derajat Fahrenheit 32.) + 273.15

Pemrograman Berorientasi Objek

38

Anda mungkin juga menyukai