0% menganggap dokumen ini bermanfaat (0 suara)
99 tayangan

2 - Basic Elements of Java

Potongan program tersebut tidak legal pada baris ke-2 karena terjadi narrowing conversion. Pada baris ke-2, variabel result bertipe data int, sedangkan hasil dari ekspresi x + y / 2.0 bertipe data double karena ada operasi pembagian. Untuk memperbaikinya, variabel result perlu di-cast ke tipe data int, sehingga baris ke-2 perlu dirubah menjadi: int x = 16, y = 3; int result; result = (int) (x + y / 2.0); Dengan mel

Diunggah oleh

afifs_1
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Format Tersedia
Unduh sebagai PPT, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
99 tayangan

2 - Basic Elements of Java

Potongan program tersebut tidak legal pada baris ke-2 karena terjadi narrowing conversion. Pada baris ke-2, variabel result bertipe data int, sedangkan hasil dari ekspresi x + y / 2.0 bertipe data double karena ada operasi pembagian. Untuk memperbaikinya, variabel result perlu di-cast ke tipe data int, sehingga baris ke-2 perlu dirubah menjadi: int x = 16, y = 3; int result; result = (int) (x + y / 2.0); Dengan mel

Diunggah oleh

afifs_1
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Format Tersedia
Unduh sebagai PPT, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 29

Basic Elements of Java

Java Name Constants and Variables Assignment Statements and Arithmetic Calculation Assignment Conversion and Casting Conversion Assignment Operators Increment and Decrement Operators Mathematical Methods Standart Input and Output

FTI - Universitas Budi Luhur

Bahasa Pemrograman 2 2 SKS

M. Anif@2006

Java Names
Jika kita melihat pada program pertama kita dan program-program selanjutnya bahwa 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

Java Names
Hasil dari sebuah konfrensi : 1. Nama class java, selalu dimulai dengan huruf besar. 2. Nama Methods dan Variables, dengan huruf kecil. 3. 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

Java Names
Reserved Keywords
abstract boolean break byte case catch char class const continue default do double else extends false final finally float for goto if implements import instanceof iInt interface long native now null package private protected public return short static super synchronized this throw throws transient true try void volatile while

Constants and Variables


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 milai nya dapat berubah selama program berjalan. Tipe data didalam java, yang tergolong kedalam tipe data primitif :
Tipe
boolean char byte short int long float double

Bit
1 16 8 16 32 64 32 64

Range / Jangkauan
True or false \u0000 to \uFFFF -128 127 -32,768 32,767 -2,147,483,648 2,147,483,647 -9,223,372,036,854,775,808... 9,223,372,036,854,775,807 -3.4e+383.4e+38 -1.7e+3081.7e+308

Sub-Tipe

Integer

Floating Point

Constants and Variables


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

Constants and Variables


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 integer sbb: double x; float pi = 3.14159F ;

Constants and Variables


boolean Konstanta dan Variabel adalah data yang berisi nilai dua kemungkinan, yaitu nilai benar atau salah. Contoh yang dibolehkan: true false Deklarasi variabel integer 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.

Constants and Variables


Contoh yang dibolehkan: a 1 abc C Deklarasi variabel integer sbb: char test = A; string test = Universitas Budi Luhur;
Escape Description sequence \n Baris baru. Posisi cursor diawal baris berikutnya. \t Horizontal tab. Memindahkan kursor ke tab berikutnya \r Carriage return. Posisi cursor diawal baris yang sedang aktif \\ Backslash. Mencetak karakter backslash. \" Double quote. Mencetak tanda petik ganda, System.out.println( "\"in quotes\"" ); displays "in quotes"

Constants and Variables


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. public class Constant { 2. public static void main(String[] args) { 3. final float PI = 3.14159F; 4. Syatem.out.println(2*pi = + 2*PI); 5. } 6. } 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

Constants and Variables


Latihan : Pertanyaan 1 8 jawablah dengan pernyataan valid atau tidak valid dan berikan alasannya kalau tidak valid. 1. 10.0 5. -100,000 2. 123E-5 6. T 3. 7. 3.14159 4. Siapa kamu? 8. True Pertanyaan 9 11, apakah sama atau tidak nilai real disisi kiri dengan disisi kanan? 9. 4650.; 4.65E+3 10. -12.71; -1.27E1 11. 0.0001; 1.0e4 Pertanyaan 12 15, apakah valid atau tidak penulisan nama berikut, jika tidak berikan alasannya? 12. isVector 14. 2ndChance 13. MyNewApp 15. MIN_DISTANCE

Constants and Variables


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. Final short MAX_COUNT = 100000; 18. 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;

Assignment Statements and Arithmetic Calculation


Secara spesifik perhitungan didalam java dapat menggunakan assignment statement. Bentuk Umumnya sbb: variable_name = expression; yaitu : menyimpan nilai dari expression ke dalam variable_name Nilai dari expression dapat berupa proses kalkulasi matematik dimana kita sebut dengan assignmnet operator. Contoh a = a + 10 Untuk jelasnya dapat dilihat tabel : arithmatic operators berikut.
Type Additon Subtraction Multiplication Division Symbol + * / Algebraic Expression a+b ab ab a / b or a b Java Expression a+b ab a*b a/b

Modulus (Remainder)

a mod b

a%b

Assignment Statements and Arithmetic Calculation


Superioritas Operator.

Operator dapat dikombinasikan ke dalam ekspresi yang kompleks result = total + count / max - offset; Operator memiliki superioritas yang terdefinisi secara baik, yang menentukan urutan mereka dievaluasi Perkalian, pembagian dan remainder dievaluasi sebelum pengurangan, penjumlahan dan penggabungan string Operator aritmatik dengan superioritas sama dievaluasi dari kiri ke kanan Kurung dapat digunakan untuk memaksa urutan evaluasi Contoh : a + b + c + d + e 1 2 3 4 a / (b + c) - d % e 2 1 4 3 a + b * c - d / e 3 1 4 2 a / (b * (c + (d - e))) 4 3 2 1

Assignment Statements and Arithmetic Calculation


Numeric Promotion of Operands adalah sebuah aturan dari hasil sebuah perhitungan matematik dimana atruran tersebut adalah 1. Jika dalam operand tersebut terdapat nilai double maka operand lain akan di konvert ke nilai double 2. Selain itu, jika dalam operand tersebut terdapat nilai float maka operand lain akan di konvert ke nilai float. 3. Selain itu, jika dalam operand tersebut terdapat nilai long maka operand lain akan di konvert ke nilai long 4. Selain itu, semua operand akan di konvert ke nilai int. Contoh :

1. 2. 3.

Expression 1+1/4 1.0 + 1 / 4 1 + 1.0 / 4

Result 1 1.0 1.25

Assignment Statements and Arithmetic Calculation


Ilustrasi Program Numeric Promotion of Operands
1. 2. 3. 4. 5. 6. 7.

public class TestPromotion { public static void main(String[] args) { System.out.println(1 + 1/4); System.out.println(1.0 + 1/4); System.out.println(1 + 1.0/4); } }

Jika dikompail dan dijalankan akan menghasilkan sbb: C:\>javac TestPromotion.java C:\>java TestPromotion 1 1.0 1.25

Assignment Conversion and 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.

Assignment Conversion and 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:
public class TestCast { 2. public static void main(String[] args) { 3. double x = 3.99, y = 1.1e38 4. System.out.println((int) x = + (int) x); 5. System.out.println((int) y = + (int) y); 6. } 7. } Hasil dari program diatas dbb: (int) x = 3 (int) y = 2147483647 // nilai maksimal int, y lebih besar dari hasil
1.

Assignment Conversion and 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; int x = 16, y = 3; int result; result = x + y / 2.0;

2.

Assignment Operators
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; Arithmatic Assignment Operators
Assignment Operators Assume: int a = 3, b = 11; Sample Expression Expanded Expression Result

2.

+=
-= *= /= %=

a += 3
a -= 2 a *= 4 a /= 2 b %= 3

a=a+3
a=a2 a=a*4 a=a/2 b=b%3

6
1 12 1 2

Increment and Decrement Operators


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 preincrement postincrement Predecrement postdecrement Sample Expression ++a a++ --a a-Expanded Expression Result Hasil cetak setelah a ditambah 1 Hasil cetak sebelum a ditambah 1 Hasil cetak setelah a dikurangi 1 Hasil cetak sebelum a dikurangi 1

Increment and Decrement Operators


Contoh Program :
1.

2.
3. 4. 5. 6. 7. 8. 9. 10.

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 ); k = --i + 2 * i * i++; System.out.println( i = + i ); System.out.println( k= + k );

11.
12.

}
}

Hasilnya : 4 28 4 21

Mathematical Methods
Dalam matematika, fungsi adalah ekpresi yang mendapatkan satu atau lebih inputan dan melakukan manipulasi yang menghasilkan satu hasil. Dalam java fungsi/metode matematika ini terdapat dalam sebuah class Math. Metode ini dapat dilihat pada tabel berikut:
Method Name and Parameters Method Value Parameter Result Type

Math.abs(x)

|x|

float, double, int, or long


double double double double double double

Same as parameter

Math.acos(x) Math.asin(x) Math.atan(x) Matt.atan2(x,y) Math.ceil(x) Math.cos(x)

cos-1x sin-1x tan-1x tan-1y/x cos x

double double double double double double

Math.exp(x)

double

double

Mathematical Methods
Method Name and Parameters Math.floor(x) Math.log(x) Math.max(x,y) log x or ln x Method Value Parameter double double float, double, int, or long float, double, int, or long double double double or float sin x x tan x double double double Result Type double double Same as parameter

Math.min(x,y)

Same as parameter

Math.random() Math.pow(x,y) Math.rin(x) Math.round(x) Math.sin(x) Math.sqrt(x) Math.tan(x)

double double double long or Int double double double

Mathematical Methods
Overloaded Methods. Kalau kita melihat dari tabel diatas, bahwa salah satu keunggulan dari java adalah, menghindari terjadinya overloaded. Ini bisa dilihat pada metode yang dapat menampung berbagai parameter. Contoh Math.abs(x), dimana x bisa dikirim berupa nilai float, double, int atau long. Coercion of Argument. Java secara otomatis melakukan konversi tipe data, jika argument tidak cocok dengan method yang dipakai. Contoh int x = 16; System.out.println(Math.sqrt(x)) // dimana x seharus dikirim dengan argument berparameter // double, tetapi dimungkinkan walaupun x int. secara explisit dilakukan didalam memori sbb: int x = 16; System.out.println(Math.sqrt( (double) x ))

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.

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();

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); } } }

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

Anda mungkin juga menyukai