Jumat, 08 Februari 2013

Pengenalan Java


Java bukan bahasa pemrograman untuk Console (seperti DOS atau Linux), sehingga untuk mengambil input dari user diperlukan sedikit trik yang tidak sesederhana. Berbeda dengan Pascal atau C yang hanya menggunakan readln(); saja untuk membaca inputan dari user, Java membutuhkan beberapa kelas, yaitu BufferedReaderInputStreamReader, dan System.in (lawan dari System.out yang kita gunakan untuk menampilkan pesan di layar). Dua kelas pertama terdapat dalam package yang dinamakan java.io

Untuk itu, kita harus menambah satu baris perintah :
import java.io.*

# Perintah tersebut berarti mengimport semua kelas dalam paket java.io.* (tanda * berarti semua).

Kemudian kita harus juga membuat suatu objek dari kelas BufferedReader. Kelas BufferedReaderadalah kelas abstrak yang menangani baca tulis ke suatu media. Kelas ini membutuhkan kelas lain sebagai pekerjanya, yaitu InputStreamReader. Dan InputStreamReader membutuhkan media tempat baca tulis dilakukan, yaitu System.in

Semua ini bisa dituliskan dalam satu perintah yaitu :

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

Lalu untuk memerintahkan Java mengambil input dari user, kita gunakan fungsi readline(); yang terdapat pada kelas BufferedReader, dalam hal ini terealisasi pada objek input
NB : Di sini variabel input merupakan objek yang merupakan jelmaan dari kelas BufferedReader

Ditulis dengan perintah :

nama = input.readLine();

# Karena kita berhubungan langsung dengan sistem IO (input-output) komputer yang harus diasumsikan tidak pasti (misalnya ada masalah pada sistem keyboard, atau komputer sedang bekerja berat sehingga input dari user tidak bisa diambil), kita harus menempatkan fungsithrows Exception

public static void main(String[]args)throws Exception

Contoh :

import java.io.*;
public class InputBR
{
    public static void main(String[]args)throws Exception
    {
    //membuat objek baru         
    BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
   
    //deklarasi variabel
    String FirstName,LastName;
  
   
    System.out.print("First Name : ");FirstName=input.readLine();
    System.out.print("Last Name : ");LastName=input.readLine();
    System.out.print("Full Name  : "+FirstName+" "+LastName);
   
    }
      
}


import java.io.*;

public class Test {

         public static void main(String[] args) {
                 System.out.print("Masukkan Nama Anda: ");

                 // dibungkus pake buffered reader
                 BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
                 String masukan = null;
                 try {
                          masukan = reader.readLine();
                 } catch (Exception e) {
                          masukan = "INPUT GAGAL";
                 }

                 System.out.println("Nama Anda adalah " + masukan + ", saya pintar kan! :)");
         }

}

1.      Input Data Melalui Keyboard Menggunakan Utility Scaner
Sebuah objek scanner dapat mengurai input yang dimasukkan melalui keyboard atau dari sebuah file. Scanner memisahkan  inputnya menjadi menjadi token terpisah (yang biasanya dipisahkan dengan spasi), dan kemudian mengembalikannya pada satu waktu. Scanner menyediakan metode untuk mengubah token menjadi nilai dari tipe yang berbeda.
Kita dapat menggunakan utility scanner dalam dua cara, yaitu :
1. Untuk membaca dari keyboard, menggunakan perintah di bawah ini
Scanner input = new Scanner(System.in);
2. Untuk membaca dari sebuah file, menggunakan perintah di bawah ini
Scanner input = new Scanner(new FileStream(“filename.txt”));
Contoh program untuk input string
import java.util.Scanner;
class input1
{
public static void main(String[] args)
{
Scanner sc = new Scanner (System.in); 
System.out.print(“ Nia : “);
String nama = sc.next ();
System.out.println(“Hello “+ nama);
}
}


2.      Dengan menggunakan import java.io.*;
Proses input dan output (I/O) adalah hal yang paling sering dijumpai pada sebagian besar program yang membutuhkan data-data eksternal. Java menyediakan dukungan terhadap proses I/O dengan menghadirkan paket java.io. Di dalam paket tersebut tersimpan banyak kelas dan interface yang siap pakai. Program Java melakukan proses I/O melalui stream. 
Stream digunakan untuk menangani proses I/O di Java. Input stream digunakan untuk membaca data dan output stream untuk menulis data. Kelas stream yang berbeda, seperti java.io.FileInputStream dan sun.net.TelnetOutputStream, digunakan untuk membaca dan menulis sumber data tertentu. Namun, semua output stream memiliki metode dasar yang sama untuk menulis data dan input stream menggunakan metode dasar yang sama untuk membaca data.
Kemampuan untuk memproses output dalam java dalam bentuk byte atau bytestream diwakili oleh class abstrak OutputStream, sedangkan input diwakili class InputStream. Apabila memproses data karakter atau disebut character stream seperti string atau bilangan maka Java menyediakan class abstrak Reader dan Writer.
BufferedInputStream dan BufferedOutputStream menyediakan fungsi buffer dalam proses output dan input untuk mempercepat dan mengefisiensikan proses. Kedua class ini biasanya digunakan secara bersamaan dengan implementasi class output dan input stream lain.
·         Contoh program untuk input string
import java.io.*;
class Program2
{
public static void main(String[] args) throws IOException
{
System.out.print(“Nia: “);
String nama;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
nama = br.readLine();
System.out.println(nama + “, kelas B”);
}
}
Dalam pemrograman Java, tidak ada syntax sederhana membuat perintah untuk memasukkan data dari keyboard. Tidak seperti C++, ketika kita ingin memasukkan data dari keyboard, kita cukup membuat syntax cin (C in). Nah, untuk itu saya akan memberikan tips ini. Kita akan membuat class yang berfungsi untuk memudahkan kalian dalam memasukkan data dari keyboard. Syaratnya, tentu jika kalian membuat program lain, dalam folder program tersebut class dari file ini juga harus ada dalam folder tersebut. Sintaksnya dapat kalian lihat disini: import java.io.*; public class BacaKeyBoard {     public static String input()     {         int karakter;         String str = "";         boolean finish = false;                while(!finish)         {             try{                 karakter = System.in.read();                 if(karakter < 0 || (char) karakter == '\n')                    finish = true;                 else if ((char) karakter != '\r')                     str = str + (char) karakter;             }             catch(java.io.IOException e){                 System.err.println("Error");                 finish = true;             }         }         return str;     } } Jika diaplikasikan kedalam program, maka sintaks program diatas dapat berfungsi seperti contoh program dibawah:
public class Nama {    
public static void main(String[] args)     {   
String nama;
System.out.print("Masukkan nama anda: ");
nama = BacaKeyBoard.input();
System.out.print("\n\nWelcome "+nama);     } } Fungsi dari program diatas sama seperti sintaks Scanner new = input Scanner(System.in); dalam java. "Om Santhi, Santhi, Santhi, Om"

Original Source : 
http://world-of-programmer.blogspot.com/2010/07/membaca-data-dari-keyboard-dalam-java.html
Copyright world-of-programmer.blogspot.com

Contoh1 : (baca.java)
//nama File : baca.java
//Membaca data dari keyboard
import java.io.*;
public class baca{
public static String bacaString(){
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){
System.out.println(“Ada Kesalahan”);
selesai = true;
}
return str;
}
}
Contoh : (inputstring.java)
//input data string dengan keyboard
public class inputstring {
public static void main(String[] args)
{
System.out.print(“Nama Anda :”);
String nama = baca.bacaString();
System.out.print(“Alamat    :”);
String alamat = baca.bacaString();
System.out.println(“hallo, “+nama);
System.out.println(“hello, “+alamat);
}
}

ontoh : (inputnumerik.java)
//Program Input Data Numeric
public class inputnumeric{
public static void main(String[] args){
System.out.print(“masukkan sebuah bilangan bulat:”);
String st1;
String st2;
st1 = baca.bacaString();
int bilBulat = Integer.valueOf(st1).intValue();
System.out.print(“Masukkan sebuah bilangan real :”);
st2 = baca.bacaString();
float bilReal = Float.valueOf(st2).floatValue();
System.out.println(“Bilangan Bulat=”+bilBulat);
System.out.println(“Bilangan real=”+bilReal);
System.out.println(“Jumlah = “+(bilBulat + bilReal));
}
}
Cara mengkompilasi dengan menggunakan j2sdk1.4.2


public class programlhs{
public static void main(String[] args)
{String jum;
int jum1;
System.out.print(“Jumlah MTK :”);
jum = baca.bacaString();
jum1= Integer.valueOf(jum).intValue();
String nmmtk[]=new String[jum1];
String SKS[]  =new String[jum1];
int SKS1[]    =new int[jum1];
String Nilai[]=new String[jum1];
int Bobot[]   =new int[jum1];
int mutu[]    =new int[jum1];
int jummutu   =0;
int totsks    =0;
float ip;
for (int i=0;i < jum1;i++)
{
System.out.print(“nama Matakuliah :”);
nmmtk[i]=baca.bacaString();
System.out.print(“SKS             :”);
SKS[i]  =baca.bacaString();
SKS1[i] =Integer.valueOf(SKS[i]).intValue();
System.out.print(“Nilai Huruf     :”);
Nilai[i]=baca.bacaString();
if(Nilai[i].equals(“A”))
Bobot[i]=4;
else if(Nilai[i].equals(“B”))
Bobot[i]=3;
else if(Nilai[i].equals(“C”))
Bobot[i]=2;
else if(Nilai[i].equals(“D”))
Bobot[i]=1;
else
Bobot[i]=10;
totsks  =totsks + SKS1[i];
mutu[i] =SKS1[i] * Bobot[i];
jummutu =jummutu + mutu[i];
}
for (int i=0;i<jum1;i++)
{
System.out.println(+ i +”  “+nmmtk[i]+”   “+SKS1[i]+”    “+Nilai[i]);
}
ip = jummutu/totsks;
System.out.println(“Jumlah Mutu =”+jummutu);
System.out.println(“Total  SKS  =”+totsks);
System.out.println(“IP          =”+ip);
}
}


0 komentar:

 
;