Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // PRIMO PEZZO
- import java.util.*;
- class Libro {
- private String titolo;
- private String autore;
- public Libro(String titolo, String autore) {
- this.titolo = titolo;
- this.autore = autore;
- }
- public String getAutore() {
- return this.autore;
- }
- public String getTitolo() {
- return this.titolo;
- }
- }
- public class RaggruppatoreLibriPerAutore {
- private List<Libro> elencoLibri;
- public RaggruppatoreLibriPerAutore(){
- this.elencoLibri = new ArrayList<Libro>();
- }
- public void aggiungiLibro(Libro libro) {
- this.elencoLibri.add(libro);
- }
- public Map<String, List<Libro>> autore2libri() {
- Map<String, List<Libro>> mappa = new HashMap<String, List<Libro>>();
- List<Libro> tmp;
- for (Libro libro : elencoLibri) {
- tmp = mappa.get(libro.getAutore());
- if (tmp == null) {
- tmp = new LinkedList<Libro>();
- mappa.put(libro.getAutore(), tmp);
- }
- tmp.add(libro);
- }
- return mappa;
- }
- }
- // SECONDO PEZZO
- import java.util.*;
- class Libro implements Comparable<Libro> {
- //NON toccare il codice di questa classe
- private String isin;
- private int pagine;
- public Libro(String isin, int p) {
- this.isin = isin;
- this.pagine = p;
- }
- //NON toccare il codice di questa classe
- public String getCodiceISIN() {
- return this.isin;
- }
- public int getNumeroPagine() {
- return this.pagine;
- }
- public int compareTo(Libro libro) {
- return this.getNumeroPagine() - libro.getNumeroPagine();
- }
- //NON toccare il codice di questa classe
- }
- class ComparatoreLibriPerPagineISIN implements Comparator<Libro> {
- public int compare(Libro l1, Libro l2) {
- int cmp = l1.compareTo(l2);
- return (cmp != 0 ? cmp : l1.getCodiceISIN().compareTo(l2.getCodiceISIN()));
- }
- }
- public class CatalogatoreLibri {
- private List<Libro> elenco;
- public CatalogatoreLibri() {
- this.elenco = new ArrayList<Libro>();
- }
- public void aggiungiLibro(Libro libro) {
- this.elenco.add(libro);
- }
- public List<Libro> elencoOrdinatoPerPagineISIN() {
- Collections.sort(elenco, new ComparatoreLibriPerPagineISIN());
- return elenco;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment