Saturday, June 11, 2011

Kalkulasi Nilai Pangkat pada Java

Sering sekali saya lupa atau mengalami kesulitan ketika berhubungan dengan fungsi pangkat. Dalam contoh berikut saya menunjukkan penggunaan fungsi pangkat standard dari Java dan alternatif yang kita buat sendiri berdasarkan nilai logaritma.

Menggunakan Math.pow

Fungsi Math.pow mengambil dua parameter nilai dengan tipe data double. Jika kita akan menghitung xy maka ekspresinya adalah Math.pow(x, y).

Contoh :
//Mencetak 3 pangkat 2
System.out.println( Math.pow(3,2) );



Menggunakan Pangkat Logaritma Alami

Alternatif lain untuk menghitung xy maka ekspresinya adalah Math.exp(y * Math.log(x)).


Contoh :
//Mencetak 3 pangkat 2
System.out.println( Math.exp(2 * Math.log(3)) );

Sunday, February 27, 2011

Konversi Teks ke Numerik dengan Apache Commons

Anda ingin mengkonversi objek String / teks ke berbagai class numerik dan menemui kesulitan harus menangani exception dimana-mana sebelumnya ? Hal itu yang sering saya temui juga dalam menangani berbagai kompleksitas tipe data seperti ini.

Beruntung pustaka Apache commons memiliki utilitas yang memudahkan kita melakukan hal tersebut. Lebih spesifiknya terdapat di BeanUtils.

Berikut adalah contoh code penggunaan konversi menggunakan pustaka tersebut.
import org.apache.commons.beanutils.ConvertUtils;

public class konversi {

 public static void main(String[] args) {
  String angka1 = "123";
  String angka2 = "123.456";
  
  Integer hasil1 = (Integer) ConvertUtils.convert(angka1, Integer.class);
  Float   hasil2 = (Float) ConvertUtils.convert(angka2, Float.class);
  Double hasil3 = (Double) ConvertUtils.convert(angka2, Double.class);

  System.out.println(hasil1);
  System.out.println(hasil2);
  System.out.println(hasil3);
 }