Tuesday, November 3, 2009

Pass by Reference di Java

Istilah ini sering kita jumpai pada saat kita akan membuat suatu fungsi. Pass by value dan pass by reference dikenal antara lain di Pascal, C, C++. Bagaimana dengan java. Di java hanya dikenal konsep pass by value. terus bagaimana jika kita ingin menerapkan konsep pass by reference di java? Konsep ini dapat diimplementasikan dengan bantuan objek. 

Perhatikan contoh berikut:
public class Tukar {
   public static void menukar(int a, int b) {
      int c;
      c=a;a=b;b=c;
   }
  public static void main(String[] arg) {
      int x=9,y=8;
      menukar(x,y);
      System.out.println("Nilai x = "+x);
      System.out.println("Nilai y = "+y);
   }
}

Bandingkan dengan contoh berikut:
public class Tukar1 {
   int a,b;
   public static void menukar(Tukar1 t) {
      int c;
      c=t.a;t.a=t.b;t.b=c;
   }
  public static void main(String[] arg) {
      Tukar1 tkr=new Tukar1();
      tkr.a=9;tkr.b=8;
      menukar(tkr);
      System.out.println("Nilai a = "+tkr.a);
      System.out.println("Nilai b = "+tkr.b);
   }
}

Friday, October 30, 2009

Input data ke Console dengan Java

Walaupun sepele ternyata banyak juga yang memerlukan ini. Input ke Console membutuhkan class BufferedReader yang ada pada package java.io
Contoh berikut dapat dicoba:

import java.io.*;
public class InputDt {
 public static void main(String[] args) 
  BufferedReader x=new BufferedReader(new InputStreamReader(System.in));
  String b1="",b2="";
  System.out.print("Masukkan bilangan pertama = ");
  try { b1=x.readLine();}
  catch(IOException e) {}
  System.out.print("Masukkan bilangan kedua   = ");
  try { b2=x.readLine();}
  catch(IOException e) {}
  int bil1,bil2,bil3;
  bil1=Integer.parseInt(b1);
  bil2=Integer.parseInt(b2);
  bil3=bil1+bil2;
  System.out.println("Hasil penjumlahan = "+bil3);
 }
}

Program diatas digunakan untuk menjumlahkan dua angka yang diinputkan dari keyboard. Semua input selalu bertipe string, sehingga pada saat akan dijumlah harus diubah dahulu menjadi tipe int/long/float/double.
Mengubah String menjadi integer, Integer.parseInt
Mengubah String menjadi Long, Long.parseLong
Mengubah String menjadi float, Float.parseFloat
Mengubah String menjadi double, Double.parseDouble