tipe data dan input/output

advertisement
TIPE DATA DAN
INPUT/OUTPUT
Matakuliah
Tahun
Versi
: T0974 / Algoritma dan Metode Object Oriented Programming I
: 2008
: 1/0
Learning Outcomes
Pada akhir pertemuan ini, diharapkan
mahasiswa akan mampu:
– Menggunakan jenis-jenis tipe data
sesuai dengan kebutuhan
pemrograman
– Menggunakan sintaks untuk
melakukan operasi input dan output
Bina Nusantara
Outline Materi
•
•
•
•
•
•
•
Tipe Data
Input/Output (I/O)
Format Output
Type Casting (Conversion)
ASCII
Import
Konstanta
Bina Nusantara
Tipe Data
• Merupakan atribut yang memiliki
rentangan nilai dan jenisnya (tipe)
• Digunakan untuk menyimpan nilai dan
eksekusi operasi
• Berdasarkan nilai yang disimpan:
–
–
–
–
Bina Nusantara
Boolean (boolean)
Numeric (byte, short, int, long, float, double)
Character (char)
String (String)
Tipe Data
• Berdasarkan pembagian:
– Atomic DT (boolean, byte, char, short, int, long, float, double)
– Composite DT (Array, Struct, List, Queue, Stack, String, Tree)
• Berdasarkan asalnya:
– Native / primitive / basic DT (sama dengan Atomic)
– Abstract DT (sama dengan Composite)
• Berdasarkan pembuatannya:
– Built-in DT (sama dengan Atomic)
– User-defined DT (sama dengan Composite)
Bina Nusantara
Tipe Data
Nama
boolean
byte
char
short
int
long
float
double
Bina Nusantara
Rentang
true, false
-27 (-128) to 27 – 1 (127)
0 to 65,535
-215 (-32,768) to 215 – 1
-231 (-2,147,483,648) to
(2,147,483,647)
-263 to 263 – 1
-3.4E38 to 3.4E38
-1.798E308 to
Ukuran
1 bit
8 bit
16 bit
16 bit
32 bit
Class
Boolean
Byte
Character
Short
Integer
64 bit
32 bit
64 bit
Long
Float
Double
Tipe Data
Nama file: TipeData.java
Output:
Bina Nusantara
Input / Output (I/O)
• Komunikasi antara komputer dengan
pihak luar (manusia / mesin)
• Input: Signal/data yang diterima oleh
sistem
• Output: Signal/data yang dikirim dari
sistem
• Proses I/O disebut “I/O perform” atau “I/O
Operation”
Bina Nusantara
Input / Output (I/O)
• Contoh perangkat input: keyboard, mouse
• Contoh perangkat output: monitor, printer
• Contoh perangkat input dan output: disk,
file
Bina Nusantara
Input / Output (I/O)
• Mengambil input dari console
menggunakan Scanner
• Diperlukan deklarasi import:
import java.util.Scanner;
• Deklarasi penciptaan object:
Scanner input = new Scanner(System.in);
Bina Nusantara
Input / Output (I/O)
Method
next();
nextLine();
nextByte();
nextShort();
nextInt();
nextLong();
nextFloat();
nextDouble();
Bina Nusantara
Kegunaan
Menginput string (kata)
Menginput string (kalimat)
Menginput bilangan (byte)
Menginput bilangan (short)
Menginput bilangan (int)
Menginput bilangan (long)
Menginput bilangan (float)
Menginput bilangan (double)
Input / Output (I/O)
Bina Nusantara
Input / Output (I/O)
Bina Nusantara
Input / Output (I/O)
Specifier
Description
Output
%b
boolean
%6b
˽false
˽˽true
%c
character
%5c
˽˽˽˽a
%d
integer
%5d
˽˽˽69
1234567
%f
Floating-point %5.2f
˽˽3.14
˽20.60
%e
scientific
%10.2e
˽˽3.14e+02
%s
string
%10s
˽˽˽˽˽hello
• Ket:
˽  spasi
Bina Nusantara
Example
Input / Output (I/O)
Specifier
Description
Output
%b
boolean
%-6b
false˽
true˽˽
%c
character
%-5c
a˽˽˽˽
%d
integer
%-5d
69˽˽˽
1234567
%f
Floating-point %-5.2f
%e
scientific
%s
string
• Ket:
˽  spasi
Bina Nusantara
Example
3.14˽˽
20.60˽
%-10.2e 3.14e+02˽˽
%-10s
hello˽˽˽˽˽
Input / Output (I/O)
Bina Nusantara
Input / Output (I/O)
• System.out.print  mencetak ke console
tanpa diakhiri linefeed (newline)
• System.out.println  mencetak ke console
dengan diakhiri linefeed (newline)
• System.out.printf  sama seperti
System.out.print, mendukung format
output
Bina Nusantara
Type Casting (Conversion)
• Operasi konversi nilai antar tipe data yang
berbeda
• Jenis type casting (conversion):
– Widening a type: konversi (cast) nilai dari tipe data yang lebih
kecil ke tipe data yang lebih besar (dilakukan secara otomatis
oleh Java)
– Narrowing a type: konversi (cast) nilai dari tipe data yang lebih
besar ke tipe data yang lebih kecil (diperlukan secara eksplisit)
• Urutan ukuran tipe data
byte, short, int, long, float, double
Bina Nusantara
Type Casting (Conversion)
• Sintaks untuk narrowing casting
menggunakan tanda kurung “(tipe data)”
• Contoh 1:
– float f = (float) 10.1;
– int i = (int) f;
• Contoh 2:
– double d = 4.5;
– int i = (int) d;
• Pada contoh 1-2 di atas, nilai dari f dan d
tidak berubah
Bina Nusantara
Type Casting (Conversion)
Bina Nusantara
Type Casting (Conversion)
• Konversi dari String ke tipe data atomik dapat
dilakukan dengan bantuan kelas:
Class
Konversi ke tipe data
Pemakaian
Boolean
boolean
Boolean.parseBoolean(…);
Byte
byte
Byte.parseByte(…);
Character
char
String.charAt(<index>);
Short
Integer
Long
short
int
long
Float
Double
float
double
Bina Nusantara
Short.parseShort(…);
Integer.parseInt(…);
Long.parseLong(…);
Float.parseFloat(…);
Double.parseDouble(…);
Type Casting (Conversion)
Bina Nusantara
Type Casting (Conversion)
Bina Nusantara
Type Casting (Conversion)
Bina Nusantara
ASCII
• American Standard Code for Information
Interchange
• 7-bit, 128 karakter (000 s/d 127)
• Berupa: uppercase/lowercase letters,
digits, punctuation marks, dan control
characters
• Perkembangan lanjut dari ASCII 
Unicode (terdiri dari 1,112,064 karakter)
Bina Nusantara
ASCII
Bina Nusantara
ASCII
Bina Nusantara
ASCII
Bina Nusantara
Type Casting (Conversion) cont.
• ASCII karakter ‘0’ s/d ‘9’
– ‘0’  48
– ‘1’  49
– ‘9’  57
• Konversi karakter ke bilangan  dikurangi
nilai 48
• Konversi bilangan ke karakter 
ditambahi nilai 48
Bina Nusantara
Type Casting (Conversion) cont.
Bina Nusantara
Konstanta
• Data permanen yang tidak dapat diubah
• Contoh:
– π (PHI) = 3.14159 26535 89793 23846 26433 83279 50288
41971 69399 37510
– g (gravitation) = 9.8
• Konstanta harus dideklarasikan dan
diinisialisasikan pada sebuah statement
• final merupakan keyword pada Java untuk
pembuatan konstanta
• Deklarasi:
– final datatype CONSTANTNAME = VALUE;
– Contoh: final double PHI = 3.1415;
Bina Nusantara
Konstanta
Bina Nusantara
Did You Know?
• Pada saat pemakaian Scanner, diperlukan
deklarasi “import java.util.Scanner;”
• Hal ini dikarenakan Scanner merupakan
kelas yang perlu di-include
• Pemakaian System tidak memerlukan
deklarasi “import java.lang.System;”
• Hal ini dikarenakan Java secara otomatis
telah meng-import semua isi “java.lang”
untuk setiap aplikasinya
Bina Nusantara
Did You Know?
• Isi java.lang sering digunakan:
–
–
–
–
–
–
–
–
–
–
–
–
Bina Nusantara
Boolean
Byte
Character
Double
Float
Integer
Long
Math
Short
String
System
Thread
Advanced Learning
• Selain menggunakan Scanner, inputan dari
console dapat menggunakan BufferedReader
• Diperlukan deklarasi import:
import java.io.BufferedReader;
import java.io.InputStreamReader;
• Deklarasi penciptaan object:
BufferedReader input = new BufferedReader
(new InputStreamReader(System.in));
• Method read(); untuk membaca karakter tunggal
• Method readLine(); untuk membaca kalimat
Bina Nusantara
Advanced Learning
Bina Nusantara
Advanced Learning
• Deklarasi import seperti:
import java.io.BufferedReader;
import java.io.InputStreamReader;
dapat diringkas menjadi:
import java.io.*;
• Penggunaan try and catch akan dibahas di
pertemuan berikutnya (Exception
Handling)
Bina Nusantara
Referensi
• Introduction to Java. 7ed. 2009. Liang. p60, p67-71, p7981, p117-118, p1300-1301
• Java Software Solutions. 5ed. 2007. Lewis. p99-103,
p111-114
• The Complete Reference: Java. 5ed. 2005. Herbert.
p33-48
• Dasar Pemrograman Java2. 2004. Abdul Kadir. p66-73
• Composite Data Types.
http://remote.science.uva.nl/~heck/JAVAcourse/ch4
• Data Type. http://en.wikipedia.org/wiki/Data_type
• Primitive Data types.
http://java.sun.com/docs/books/tutorial/java/nutsandbolts
/datatypes.html
• Primitive Data types.
http://en.wikipedia.org/wiki/Primitive_type
Bina Nusantara
Download