- Code: Select all
class Es5n7{
static int scelta(){ //scelta tra double e integer a seconda del return del metodo
int i=(int)Math.round(Math.random());
return i;
}
static Integer gen_int(){ //generazione Integer
Integer i=new Integer((int)Math.round(Math.random()*10+21));
return i;
}
static Double gen_double(){ //generazione Double
Double i= new Double(Math.random());
return i;
}
static void stampa(Number v[], int dim){ //metodo di stampa
System.out.println("Il vettore:");
String I="java.lang.Integer";
String D="java.lang.Double";
for(int i=0;i<dim;i++){
Class cl=v[i].getClass();
String nome= cl.getName();
if (nome.equals(I))
System.out.println(v[i].intValue());
else if(nome.equals(D))
System.out.println(v[i].doubleValue());
}
}
static void conta(Number v[],int dim){
String I="java.lang.Integer";
String D="java.lang.Double";
int countI=0;
int countD=0;
for(int i=0;i<dim;i++){
Class cl=v[i].getClass();
String nome= cl.getName();
if (nome.equals(I))
countI++;
else if(nome.equals(D))
countD++;
}
System.out.println("La stringa contiene "+countI+" elementi Integer.");
System.out.println("La stringa contiene "+countD+" elementi Double.");
}
public static void main(String[] args){ //main
int dim=gen_int();
Number v[]=new Number[dim];
for(int i=0;i<dim;i++){
if (scelta()==0)
v[i]=gen_int();
else
v[i]=gen_double();
}
stampa(v,dim);
conta(v,dim);
}
}
nno è proprio il primo, però è uno dei primi a cui ho lavorato! ancora roba noiosa e stupida, però devo ancora familiarizzare con gli oggetti...


