search
Minggu, 11 Oktober 2009
Oprasi I/O Stream Sederhana
08.23 | Diposting oleh
Dian Mega Sari Dewi Zudhi |
Edit Entri
Stream Standard
1. System.in: menangani pembacaan dari keyboard (standard input)
2. System.out: mengirimkan keluaran ke layar (standard output)
3. System.err: mengirimkan kesalahan (standard error)
Membaca Input dari Keyboard
karakter = System.in.read();
InputKeyboard.java
import java.io.*;
public class InputKeyboard{
public static String inputString(){
int karakter; String str ="“; boolean selesai = false;
while(!selesai){
try{
karakter = System.in.read();
System.err.println("Ada kesalahan");
selesai = true;
}
}
return str;
}
}
Konversi String ke Tipe Lain
KonversiData.java
public class KonversiData{
public static void main(String[] args){
String dataString;
System.out.println("Masukkan sebuah bilangan bulat:" );
dataString = InputKeyboard.inputString();
int dataBulat = Integer.valueOf(dataString).intValue();
System.out.println("Masukkan sebuah bilangan pecahan:" );
dataString = InputKeyboard.inputString();
double dataPecahan = Double.valueOf(dataString).doubleValue();
System.out.println("Bilangan Bulat:" + dataBulat);
System.out.println("Bilangan Pecahan:" + dataPecahan);
}
Argument untuk Menerima Input
public class LuasSegitigaArgs {
public static void main(String[] args) {
double alas= Double.parseDouble(args[0]);
double tinggi = Double.parseDouble(args[1]);
luas = (alas*tinggi)/2;
System.out.println("Luas Segitiga : " + luas);
}
}
Argument untuk Menerima Input
public class LuasSegitigaArgs {
public static void main(String[] args) {
if (args.length == 2){
System.out.println("Penggunaan Argument Salah!");
System.out.println("Contoh: java LuasSegitigaArgs 30 20");
}
}
}
1. System.in: menangani pembacaan dari keyboard (standard input)
2. System.out: mengirimkan keluaran ke layar (standard output)
3. System.err: mengirimkan kesalahan (standard error)
Membaca Input dari Keyboard
- Perintah sederhana untuk memasukkan data dari keyboard adalah membaca sebagai karakter
- Penggunaannya memerlukan blok try-catch (akan dibahas pada bagian eksepsi)
- Contoh:
karakter = System.in.read();
- Untuk mudahnya, gunakan class
InputKeyboard.java
import java.io.*;
public class InputKeyboard{
public static String inputString(){
int karakter; String str ="“; boolean selesai = false;
while(!selesai){
try{
karakter = System.in.read();
if(karakter < 0 || (char) karakter == '\n') selesai = true;
else if ((char) karakter != '\r') str = str + (char) karakter;
}catch (java.io.IOException e){else if ((char) karakter != '\r') str = str + (char) karakter;
System.err.println("Ada kesalahan");
selesai = true;
}
}
return str;
}
}
Konversi String ke Tipe Lain
- Method inputString() pada class InputKeyboard memiliki nilai balik bertipe String
- Tipe String bisa kita konversi ke tipe lain (int, float, atau double) dengan menggunakan method valueOf() yang ada di class Integer, Float dan Double:
- Integer.valueOf(nilaiString).intValue()
- Float.valueOf(nilaiString).floatValue()
- Double.valueOf(nilaiString).doubleValue()
KonversiData.java
public class KonversiData{
public static void main(String[] args){
String dataString;
System.out.println("Masukkan sebuah bilangan bulat:" );
dataString = InputKeyboard.inputString();
int dataBulat = Integer.valueOf(dataString).intValue();
System.out.println("Masukkan sebuah bilangan pecahan:" );
dataString = InputKeyboard.inputString();
double dataPecahan = Double.valueOf(dataString).doubleValue();
System.out.println("Bilangan Bulat:" + dataBulat);
System.out.println("Bilangan Pecahan:" + dataPecahan);
}
Argument untuk Menerima Input
public class LuasSegitigaArgs {
public static void main(String[] args) {
double alas= Double.parseDouble(args[0]);
double tinggi = Double.parseDouble(args[1]);
luas = (alas*tinggi)/2;
System.out.println("Luas Segitiga : " + luas);
}
}
Argument untuk Menerima Input
public class LuasSegitigaArgs {
public static void main(String[] args) {
if (args.length == 2){
double alas = Double.parseDouble(args[0]);
double tinggi = Double.parseDouble(args[1]);
}else{double tinggi = Double.parseDouble(args[1]);
double luas = (alas*tinggi)/2;
System.out.println("Luas Segitiga : " + luas);System.out.println("Penggunaan Argument Salah!");
System.out.println("Contoh: java LuasSegitigaArgs 30 20");
}
}
}