hashCode int wert

Diskutiere hashCode int wert im AWT, Swing, JavaFX & SWT Bereich.
S

Sandro95

Einen guten Abend euch allen ,
ich habe vlt einedumme Frage , aber verstehe ich nicht ganz warum ichwenn ich ein Attribut vom Typ int habe diesen in meiner hashCode Methode erstmal zum Double konvertieren muss ?

Beispiel Code

public class Audio extends Medium {


private String interpret ;
private int dauer;

public Audio(String titel, int jahr , String interpret , int dauer) {
super(titel,jahr);
this.interpret=interpret;
this.dauer=dauer;

}

public String getInterpret() {
return interpret;
}
public int getDauer() {
return dauer;
}

public void druckeDaten() {
System.out.println("ID = " + super.getId() + " " + super.getTitel() + " von " + this.getInterpret() + " aus " + super.getJahr() + " Spieldauer:" + this.getDauer() + " sek.");

}

public boolean equals(Object obj) {
if(obj==null || !(obj instanceof Audio)) {
return false;

}
Audio newAudio = (Audio)obj;
if(this.getTitel().equals(newAudio.getTitel()) && this.getJahr()==newAudio.getJahr() && this.interpret.equals(newAudio.interpret)&& this.dauer==newAudio.dauer) {
return true;
}else
return false;
}

public int hashCode() {
return super.hashCode() + 9* this.getInterpret().hashCode() + new Double(this.dauer).hashCode();


ich danke euch schon mal im Voraus :)
 
S

Sandro95

@mihe7
warum klappt es anders dann nicht ?

ohne die Konvertierung taucht bei mir eine Fehlermeldung auf
"Cant inovke hashcode() on the primitive type int" ?
 
S

Sandro95

ich finde nichts passendes dazu , deswegen hier die Frage .
Vlt kann mir einer ja weiterhelfen . Wäre nett

lg
 
J

JustNobody

Was macht denn hashcode()? Es berechnet aus einem komplexen Objekt ein int.

Wenn du ein int hast: wie bekommst du aus einem int ein int?

Oder ein anderer Gedankengang:
hashcode() ist eine Methode von Object. Was ist den int? Und gibt es bei primitiven Typen eine Möglichkeit eine Reference zu bekommen? Evtl. mal Boxing / Unboxing nachschlagen.
Wenn es da sowas gibt, dann schreib mal einen Code, der ein Zufalls int Wert erzeugt, da dann ein Boxing + hashcode Aufruf und dann den int und hashcode ausgeben: Was fällt auf?
 
Thema: 

hashCode int wert

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben