10. oktober 2004 - 12:31Der er
5 kommentarer og 1 løsning
Hvad skal der laves om?
Hejsa,
Har denne metode: public int compareTo(Object o) { Person p = (Person)o; while(this.lastName.compareTo(p.lastName)==0) { if(this.firstName.compareTo(p.firstName)==0) return this.age.compareTo(p.age); else return this.firstName.compareTo(p.firstName); }
}
Jeg får flg. fejl: int cannot be dereferenced...
Jeg har prøvet div. former for casting men intet virker...HJÆLP:-)
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Der er kund de 2 objekter der sammenlignes så hvorfor skriver du 'while' while(this.lastName.compareTo(p.lastName)==0) med korrekte indrykninger kan du se hvorfor det er misvisende:
public int compareTo(Object o) { Person p = (Person)o; if (this.lastName.compareTo(p.lastName)==0) { if(this.firstName.compareTo(p.firstName)==0) return new Integer(this.age).compareTo( new Integer(p.age) ); return this.firstName.compareTo(p.firstName); } return this.lastName.compareTo(p.lastName); // denne linie manglede }
men jeg ville hellere lave det lidt mere forståeligt:
public int compareTo(Object o) { Person p = (Person)o; if (this.lastName.compareTo(p.lastName)!=0) return this.lastName.compareTo(p.lastName);
// hvis lastname var ens skal vi kikke videre if(this.firstName.compareTo(p.firstName)!=0) return this.firstName.compareTo(p.firstName);
// og hvis både last og first er ens er det alderen return new Integer(this.age).compareTo( new Integer(p.age) ); }
mvh JakobA
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.