Sort
This commit is contained in:
parent
74b404f03f
commit
89479bf7fa
29
src/Mediana.java
Normal file
29
src/Mediana.java
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Comparator;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
public class Mediana{
|
||||||
|
public static void main(String [] args){
|
||||||
|
|
||||||
|
ArrayList<Integer> list =new ArrayList<Integer>();
|
||||||
|
Random rand = new Random();
|
||||||
|
for(int i=0; i<rand.nextInt(100); i++){
|
||||||
|
list.add(rand.nextInt(100));
|
||||||
|
}
|
||||||
|
Comparator<Integer> cmp=new IntComparator();
|
||||||
|
Collections.sort(list, cmp);
|
||||||
|
|
||||||
|
for(Integer item: list){
|
||||||
|
System.out.println(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class IntComparator implements Comparator<Integer>{
|
||||||
|
public int compare(Integer i1, Integer i2){
|
||||||
|
return (-1)*i1.compareTo(i2);
|
||||||
|
}
|
||||||
|
}
|
@ -1,11 +1,15 @@
|
|||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
import java.util.ArrayList;
|
import java.util.Set;
|
||||||
|
import java.util.TreeSet;
|
||||||
import java.io.PrintStream;
|
import java.io.PrintStream;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Comparator;
|
||||||
|
|
||||||
public class Anagrafe{
|
public class Anagrafe{
|
||||||
|
|
||||||
public Anagrafe(Scanner sc)throws Exception{
|
public Anagrafe(Scanner sc)throws Exception{
|
||||||
registro = new ArrayList<Persona>();
|
Comparator<Persona> cmp=new PersonaComparator();
|
||||||
|
registro = new TreeSet<Persona>(cmp);
|
||||||
Persona p = Persona.read(sc);
|
Persona p = Persona.read(sc);
|
||||||
while(p!=null){
|
while(p!=null){
|
||||||
registro.add(p);
|
registro.add(p);
|
||||||
@ -14,7 +18,7 @@ public class Anagrafe{
|
|||||||
}
|
}
|
||||||
|
|
||||||
private Anagrafe(ArrayList<Persona> registro){
|
private Anagrafe(ArrayList<Persona> registro){
|
||||||
this.registro=registro;
|
//this.registro=registro;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void print(PrintStream ps){
|
public void print(PrintStream ps){
|
||||||
@ -43,6 +47,19 @@ public class Anagrafe{
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private ArrayList<Persona> registro;
|
private Set<Persona> registro;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class PersonaComparator implements Comparator<Persona>{
|
||||||
|
public int compare(Persona p1, Persona p2){
|
||||||
|
int cmp=p1.getDataDiNascita().compareTo(p2.getDataDiNascita());
|
||||||
|
if(cmp==0){
|
||||||
|
cmp=p1.getCognome().compareTo(p2.getCognome());
|
||||||
|
if(cmp==0){
|
||||||
|
cmp=p1.getNome().compareTo(p2.getNome());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return cmp;
|
||||||
|
}
|
||||||
}
|
}
|
@ -49,6 +49,7 @@ public class Persona{
|
|||||||
ps.println(nome);
|
ps.println(nome);
|
||||||
ps.println(cognome);
|
ps.println(cognome);
|
||||||
ps.println(sdf.format(dataDiNascita));
|
ps.println(sdf.format(dataDiNascita));
|
||||||
|
ps.println("*****");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,7 +7,5 @@ public class Test{
|
|||||||
Scanner sc = new Scanner(fl);
|
Scanner sc = new Scanner(fl);
|
||||||
Anagrafe an=new Anagrafe(sc);
|
Anagrafe an=new Anagrafe(sc);
|
||||||
an.print(System.out);
|
an.print(System.out);
|
||||||
System.out.println("*******");
|
|
||||||
an.filtroCognome("due").filtroNome("noemi").print(System.out);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,9 +1,18 @@
|
|||||||
pappa
|
Raffaele
|
||||||
papsp
|
Mignone
|
||||||
12/12/1999
|
12/12/1999
|
||||||
dffdfd
|
Aaa
|
||||||
dhdhdh
|
Manganiello
|
||||||
14/08/1990
|
14/08/1990
|
||||||
|
Salvatore
|
||||||
|
Manganiello
|
||||||
|
14/08/1990
|
||||||
|
Francesco
|
||||||
|
Martignetti
|
||||||
|
15/08/1990
|
||||||
|
Raffaele
|
||||||
|
Mignone
|
||||||
|
12/12/2000
|
||||||
noemi
|
noemi
|
||||||
dhhf
|
dhhf
|
||||||
13/05/1200
|
13/05/1200
|
||||||
|
Loading…
Reference in New Issue
Block a user