Program di bawah ini adalah contoh penggunaan Vector untuk menangani data yang dinamis. Data dinamis dapat kita temui ketika membangun aplikasi yang berhubungan dengan database dan membutuhkan pengolahan data lebih lanjut. Class Stades adalah prototipe class yang akan disediakan untuk memberikan semua layanan yang berkaitan dengan statistik deskriptif.
import java.util.*;
class StatDes
{
//static double rata;
static double mean(double[] data)
{
double rata=0.0;
double jumlah=0.0;
int qty=data.length;
for(int i=0;i<qty;i++)
{
jumlah+=data[i];
}
rata=jumlah/qty;
return rata;
}
static double mean(Vector data)
{
double rata=0.0;
double jumlah=0.0;
int qty=data.size();
Iterator datavektor=data.iterator();
while(datavektor.hasNext())
{
double x=Double.parseDouble((String) datavektor.next());
jumlah+=x;
}
rata=jumlah/qty;
return rata;
}
double median(double[] data)
{
int qty=data.length;
int indeks=0;
double med=0.0;
sort(data);
if(qty%2==0)
{
indeks=qty/2;
med=(data[indeks-1]+data[indeks])/2;
}
else
{
indeks=(int) (qty/2);
med=data[indeks];
}
return med;
}
double[] sort(double[] data)
{
int qty=data.length;
for(int i=0;i<qty;i++)
{
for(int j=0;j<qty-1;j++)
{
if(data[j]>data[j+1])
{
double bantu=data[j];
data[j]=data[j+1];
data[j+1]=bantu;
}
}
}
return data;
}
}
Terdapat dua method mean dengan argumen yang berbeda. Mean pertama memiliki argumen array 1 dimensi dan mean kedua memiliki argumen dalam bentuk vector. Class Application adalah class yang digunakan sebagai pengguna dari class StatDes.
import java.util.*;
class Application
{
static double[] data=new double[6];
public static void main(String args[])
{
//Data disediakan dengan cara dibawah ini
for(int i=0;i<6;i++)
{
data[i]=Math.random()*100;
}
Vector v=new Vector(6);
for(int i=0;i<7;i++)
{
v.add(String.valueOf(Math.random()*100));
}
//kita bentuk objek agar dapat menggunakan berbagai method yang disediakan
StatDes s=new StatDes();
//penggunaan method dari class StatDes
System.out.println(“Mean = “+StatDes.mean(data));
System.out.println(“Mean = “+s.mean(data));
System.out.println(“Mean = “+s.mean(v));
}
}
Pada bagian yang dicetak tebal, meskipun kita hanya memesan tempat pada objek Vector sebanyak 6, tetapi ketika datanya ternyata lebih dari 6 maka program kita tetap bisa berjalan.
0 Komentar untuk "Penggunaan Vector untuk menangani Array Dinamis"