Pages: [1]   Go Down
Print
Author Topic: Classe Generic Coppia  (Read 653 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
callo
Forumista
***
Offline Offline

Gender: Male
Posts: 564


"Quanto manca alla vetta?";"Tu sali e non pensare"


« on: 17-07-2011, 20:01:58 »

Ragazzi sto' provando ad implementare la classe Coppia che c'era nell'ultimo compito B però sto avendo qualche problemino precisamente:
La consegna dice:"Si realizzi un'implementazione dell'interfaccia Couple mostrata di seguito:
Code:
public interface Couple<Y,K> extends Comparable
{
public Y getFirst(); //ritorna il primo elemento della coppia
public K getSecond(); //ritorna il secondo elemento della coppia
public int compareTo (Couple c); //confronta due oggetti coppia in base al valore lessicografico del primo elemento
}
io l'ho svolto così:
Code:
class Couple<Y extends Comparable<Y>,K extends Comparable<J>>
{
private Y first;
private K second;
public Couple(Y f,K s)
{
first=f;
second=s;
}
public Y getFirst()
{
return first;
}
public K getSecond()
{
return second;
}
public int compareTo(Couple c)
{
if(this.getFirst().compareTo(c.getFirst())>0)
return 1;
else if(this.getFirst().compareTo(c.getFirst())<0)
return -1;

return 0;

}
}
il problema è che mi da' i seguenti 2errori:
Code:
prova.java:222: compareTo(Y) in java.lang.Comparable<Y> cannot be applied to (java.lang.Comparable)
if(this.getFirst().compareTo(c.getFirst())>0)
                  ^
prova.java:224: compareTo(Y) in java.lang.Comparable<Y> cannot be applied to (java.lang.Comparable)
else if(this.getFirst().compareTo(c.getFirst())<0)
                       ^
Come risolvere?? Grazie a tutti!!
Logged

"A cavallina....a cavallina.....a chi era bedda quannu  curreva" [Cit.  Dal Tenerissimo via plebiscito]
fabryxio
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 343

Chi l'ha duro....... l'ha duro!


WWW
« Reply #1 on: 18-07-2011, 08:58:05 »

Ragazzi sto' provando ad implementare la classe Coppia che c'era nell'ultimo compito B però sto avendo qualche problemino precisamente:
La consegna dice:"Si realizzi un'implementazione dell'interfaccia Couple mostrata di seguito:
Code:
public interface Couple<Y,K> extends Comparable
{
public Y getFirst(); //ritorna il primo elemento della coppia
public K getSecond(); //ritorna il secondo elemento della coppia
public int compareTo (Couple c); //confronta due oggetti coppia in base al valore lessicografico del primo elemento
}
io l'ho svolto così:
Code:
class Couple<Y extends Comparable<Y>,K extends Comparable<J>>
{
private Y first;
private K second;
public Couple(Y f,K s)
{
first=f;
second=s;
}
public Y getFirst()
{
return first;
}
public K getSecond()
{
return second;
}
public int compareTo(Couple c)
{
if(this.getFirst().compareTo(c.getFirst())>0)
return 1;
else if(this.getFirst().compareTo(c.getFirst())<0)
return -1;

return 0;

}
}
il problema è che mi da' i seguenti 2errori:
Code:
prova.java:222: compareTo(Y) in java.lang.Comparable<Y> cannot be applied to (java.lang.Comparable)
if(this.getFirst().compareTo(c.getFirst())>0)
                 ^
prova.java:224: compareTo(Y) in java.lang.Comparable<Y> cannot be applied to (java.lang.Comparable)
else if(this.getFirst().compareTo(c.getFirst())<0)
                      ^
Come risolvere?? Grazie a tutti!!
Come parametro devi passare un Object c , e poi nelle condizioni fai un cast:
...all'esame il prof aveva detto di passare un Object infatti!
« Last Edit: 18-07-2011, 09:03:43 by fabryxio » Logged

Pages: [1]   Go Up
Print
Jump to: