Pages: [1]   Go Down
Print
Author Topic: Lista linkata semplice di oggetti generici, help!!!  (Read 753 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
Blonic
Forumista
***
Offline Offline

Gender: Male
Posts: 868



WWW
« on: 21-05-2009, 17:36:04 »

Ciao, sto smanettando per realizzare il seguente esercizio:
Quote
Definire in maniera completa la classe Lista per una
lista linkata semplice di oggetti generici.
Testare la struttura per memorizzare elementi della
classe Person.
Per prima cosa quindi creo questa lista generica, cioè una lista in cui i nodi invece di avere int avranno come parametri degli Object.
La prima insidia che mi si presenta è nel metodo compareTo fra due Nodi.
Quello che penso si dovrebbe fare è estrarre il contenuto dei due nodi e confrontarli con un compareTo (riferito agli oggetti, nell'ipotesi che siano Comparable) ma questo non mi risulta!
Cosa sbaglio? C'è qualche cast da fare? Che mi proponete come soluzione? Il mio pezzo di codice è questo:
Code:
public int compareTo (Nodobj x)
{
return this.getInfo().compareTo(x.getInfo());
}
Gli errori nella consolle sono questi:
Code:
>javac Nodobj.java
Nodobj.java:3: Nodobj is not abstract and does not override abstract method compareTo(java.lang.Object) in java.lang.Comparable
public class Nodobj implements Comparable
       ^
Nodobj.java:42: cannot find symbol
symbol  : method compareTo(java.lang.Object)
location: class java.lang.Object
return this.getInfo().compareTo(x.getInfo());
                     ^
2 errors
>Exit code: 1

PS: Nodobj è la classe del Nodo generico e getInfo restituisce il contenuto....
Logged
Blonic
Forumista
***
Offline Offline

Gender: Male
Posts: 868



WWW
« Reply #1 on: 21-05-2009, 17:46:15 »

Problema risolto!
Sono piuttosto veloce...   [Emoticon] Asd
Si trattava di una simpatica serie di cast da fare:
Code:
public int compareTo (Object x)
{
return ((Nodobj)this.getInfo()).compareTo(((Nodobj)x).getInfo());
}
Se qualcuno pensa che mi sbaglio me lo faccia sapere!
Logged
LtWorf
Forumista Esperto
****
Offline Offline

Posts: 1.079

Ogni cosa da me scritta è da intendersi come opinione personale e non come dato di fatto. Anche le eventuali dimostrazioni matematiche da me scritte saranno opinioni personali e quindi dovranno venire dimostrate da una terza parte di fiducia


WWW
« Reply #2 on: 21-05-2009, 21:08:10 »

Il compareTo dovrebbe funzionare con un qualunque oggetto in input, cosa che il tuo non fa.
Logged

There are some OO programming languages. I will create the first -_-' language.

LtWorf
Pages: [1]   Go Up
Print
Jump to: