100% menganggap dokumen ini bermanfaat (1 suara)
190 tayangan8 halaman

Bab 2. Dasar Pemrograman Java

Dokumen ini membahas dasar pemrograman Java meliputi penamaan identifier, kata kunci, tipe data dasar, nilai default, casting, dan promotion. Terdapat penjelasan teori dan contoh kode untuk memberi nilai, menampilkan nilai default, operasi matematika, bilangan oktal, heksadesimal, dan batasan tipe data. Ada juga latihan tentang casting dan promotion serta tugas menganalisis batasan maksimum tipe dan menghitung selisih waktu.

Diunggah oleh

Reza Pahlevi
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
100% menganggap dokumen ini bermanfaat (1 suara)
190 tayangan8 halaman

Bab 2. Dasar Pemrograman Java

Dokumen ini membahas dasar pemrograman Java meliputi penamaan identifier, kata kunci, tipe data dasar, nilai default, casting, dan promotion. Terdapat penjelasan teori dan contoh kode untuk memberi nilai, menampilkan nilai default, operasi matematika, bilangan oktal, heksadesimal, dan batasan tipe data. Ada juga latihan tentang casting dan promotion serta tugas menganalisis batasan maksimum tipe dan menghitung selisih waktu.

Diunggah oleh

Reza Pahlevi
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 8

PRAKTIKUM 2

DASAR PEMROGRAMAN JAVA


A. TUJUAN PEMBELAJARAN
1. Mengetahui aturan penamaan identifier
2. Mengenal kata-kata kunci yang ada di Java
3. Mengetahui tipe-tipe dasar yang ada di Java
4. Mengetahui pemberian nilai default untuk masing-masing tipe dasar
5. Memahami bagaimana melakukan casting dan promotion

B. DASAR TEORI
Identifier adalah nama yang diberikan untuk variabel, class atau method.
Penamaan identifier tidak boleh mengandung spasi dan harus diawali dengan karakter
unicode, tanda $ (dollar) atau tanda _ (underscore). Penamaan identifier ini bersifat
case-sensitive dan tidak dibatasi panjang maksimum.
Java mempunyai 48 kata kunci, seperti if, int, void, dan lain-lain. Kata-kata
kunci tersebut tidak bisa dipakai sebagai identifier. Selain kata kunci, Java juga
mempunyai 3 kata literal, yaitu true, false dan null, yang juga tidak bisa dipakai untuk
penamaan identifier juga terdapat 2 reserved words yang tidak bisa digunakan sebagai
nama identifier yaitu const dan goto.
Java mempunyai 8 tipe dasar, yaitu boolean, char, byte, short, int, long, float,
dan double. Dari 8 tipe data dasar tersebut bisa dikelompokkan menjadi 4 kelompok
data yaitu, integral, floating point, character, dan logical. Yang termasuk dalam
kelompok data integral atau bilangan bulat adalah byte, short, int dan long. Nilai default
untuk kelompok data integral adalah int. Yang termasuk dalam kelompok data floating
point adalah float dan double dengan nilai default double. Sedang yang termasuk dalam
7

tipe data character adalah char yang direpresentasikan dengan Unicode leter. Dan
kelompok data yang terakhir adalah logical yaitu boolean dengan hanya dua buah nilai
saja yang diijinkan yaitu true dan false. Spesifikasi panjang bit dan range serta nilai
default untuk masing-masing tipe data bisa dilihat pada Tabel 2.1.
Casting diperlukan untuk mengkonversi dari suatu tipe ke tipe data yang lebih
kecil panjang bitnya. Sedangkan promotion terjadi pada saat mengkonversi dari suatu
tipe data ke tipe data yang lebih panjang bitnya.
Contoh :

int p = (int) 10L;


long i = 10;

Tabel 2.1 Spesifikasi panjang bit dan nilai default tipe data dasar
Tipe

Panjang bit

Range

Nilai Default

boolean

16

false

char

16

0 216-1

\u0000

byte

-27 27-1

short

16

-215 215-1

int

32

-231 231-1

long

64

-263 263-1

0L

float

32

0.0F

double

64

0.0

C. TUGAS PENDAHULUAN
1. Buatlah uraian yang berisi tentang spesifikasi 8 tipe data dasar !
2. Apakah yang dimaksud dengan casting (narrowing conversion) ?
3. Apakah yang dimaksud dengan konversi (widening conversion) ?

D. PERCOBAAN
Percobaan 1 : Memberikan nilai ke suatu tipe data
public class Assign {
public static void main(String args[]) {
boolean b = true;

System.out.println("Value b = " + b);

char c = 'C';
System.out.println("Value c = " + c);

byte bt = 10;
System.out.println("Value bt = " + bt);

short s = 20;
System.out.println("Value s = " + s);

int i = 30;
System.out.println("Value i = " + i);

long l = 40L;
System.out.println("Value l = " + l);

float f = 3.14F;
System.out.println("Value f = " + f);

double d = 3.14;
System.out.println("Value d = " + d);
}
}

Percobaan 2 : Mencetak nilai default dari tipe dasar


public class DefaultValue {
static boolean b;
static char c;
static byte bt;
static short s;
static int i;
static long l;
static float f;
static double d;

public static void main(String args[]) {

System.out.println("Default value b = " + b);


System.out.println("Default value c = " + c);
System.out.println("Default value bt = " + bt);
System.out.println("Default value s = " + s);
System.out.println("Default value i = " + i);
System.out.println("Default value l = " + l);
System.out.println("Default value f = " + f);
System.out.println("Default value d = " + d);
}
}

Percobaan 3 : Mengamati hasil perubahan nilai dari suatu operasi matematis


public class Divide {
public static void main(String[] arguments) {
float number1 = 15;
float number2 = 6;
float result = number1 / number2;
float remainder = number1 % number2;
System.out.println(number1 + " divided by " + number2);
System.out.println("\nResult\tRemainder");
System.out.println(result + "\t" + remainder);
}
}

Percobaan 4 : Mengamati hasil perubahan nilai dari suatu operasi matematis


class Invest {
public static void main(String[] arguments) {
float total = 14000;
System.out.println("Original investment: $" + total);

// Increases by 40 percent the first year


total = total + (total * .4F);
System.out.println("After one year: $" + total);

// Loses $1,500 the second year

10

total = total - 1500F;


System.out.println("After two years: $" + total);

// Increases by 12 percent the third year


total = total + (total * .12F);
System.out.println("After three years: $" + total);
}
}

Percobaan 5 : Menampilkan bilangan oktal ke format desimal


public class Octal {
public static void main(String args[]) {
int six=06;
int seven=07;
int eight=010;
int nine=011;

System.out.println("Octal six = " + six);


System.out.println("Octal seven = " + seven);
System.out.println("Octal eight = " + eight);
System.out.println("Octal nine = " + nine);
}
}

Percobaan 6 : Menampilkan bilangan heksadesimal ke format desimal


public class Hexadecimal {
public static void main(String args[]) {
int x=0x0001;
int y=0x7fffffff;
int z=0xDeadCafe;

System.out.println("x = " + x);


System.out.println("y = " + y);
System.out.println("z = " + z);

11

}
}

Percobaan 7 : Mengamati perubahan nilai pada suatu tipe


public class Plus {
public static void main(String args[]) {
int x;
int y;

x=2147483647;

//(2^31)-1

System.out.println("x = " + x);

y=x+1;
System.out.println("y = " + y);
}
}

Percobaan 8 : Memahami pemakaian Unicode


public class CobaUnicode {
public static void main(String args[]) {
ch\u0061r a='a';
char \u0062 = 'b';
char c= '\u0063';
String kata="\u0061\u0062\u0063";

System.out.println("a: " + a);


System.out.println("a: " + b);
System.out.println("a: " + c);
System.out.println("kata: " + kata);
}
}

12

E. LATIHAN
Latihan 1 : Membuat formulasi proses casting dari tipe-tipe primitif
Lakukan percobaan casting antar tipe-tipe primitif. Lalu amati dan catatlah konversi dari
suatu tipe ke tipe lainnya yang memerlukan suatu casting. Dari hasil analisa anda,
buatlah suatu skema casting diantara tipe-tipe primitif.

Latihan 2 : Membuat formulasi proses promotion dari tipe-tipe primitif


Lakukan percobaan promotion antar tipe-tipe primitif. Lalu amati dan catatlah konversi
dari suatu tipe ke tipe lainnya yang menyebabkan terjadinya suatu promotion. Dari hasil
analisa anda, buatlah suatu skema promotion diantara tipe-tipe primitif.

F. TUGAS
Tugas 1 : Menganalisa batasan maksimum dari suatu tipe
Amatilah dan tulislah program berikut ini:
public class BigInteger {
public static void main(String args[]) {
long p=2147483648;
}
}

Lakukan kompilasi pada file tersebut dan amati pesan kesalahannya. Lakukan analisa
mengapa bisa terjadi kesalahan padahal batasan nilai maksimum dari suatu bilangan
bertipe long adalah 263-1 (9223372036854775807)?. Kemudian berikanlah solusi yang
tepat untuk mengatasi persoalan diatas.

Tugas 2 : Mencari panjang menit dari durasi waktu


Input: jam awal, menit awal, jam akhir, menit akhir
Output: durasi waktu (dalam menit) antara jam awal menit awal dengan jam akhir menit
akhir.

13

LAPORAN RESMI
Kumpulkan hasil percobaan di atas dan tambahkan analisa untuk tiap percobaan,
latihan, dan tugas yang telah dibuat.

14

Anda mungkin juga menyukai