Methoden Konsolenapplikation HashDatenstruktur

gehdecke

Mitglied
Hallo zusammen,

ich bin neu hier und will mir gerade JAVA beibringen es ist sehr interessant aber auch schwer. Ich habe zwar bereits Datenbankentwicklung mit MS Access gelernt aber Java bietet mir dann mehr. Ich habe nun ein Problem ich soll eine Aufgabe lösen wo ich etwas auf dem Schlauch stehe. Vielleicht kann mir ja jemand helfen.

Schreiben Sie eine Konsolenapplikation unter dem Namen "HashDatenstruktur". Beachten Sie beim codieren das Sie immer den vollständigen Hashtable -Klassennamen verwenden müssen. (java.util.hashtable) damit die Klasse sowie gefunden wird.

Erzeugen in dieser Applikation ein Hashtable- Objektmithilfe des parameterlosen Hashtable_Konstruktor.

Erzeugen Sie 6 verschidene Objekte der Klasse Kreis mit unteschieldlichen Eigenschaften als "ANONYME OBJEKTE! (???) und mappen Sie diese in Hashtable. Benützen Sie den Schlüssel Hüllklasse_Objekte für den einfachen Datnetyp "int" die sie fortlaufend ab 0 erzeugen ?
Ermittelnb Sie das 4. Element in der Hashtable und geben Sie dessen x-/und Y Koordinatn an.
Mein Javacode lautet bis dahin:

Java:
import java.util.Hashtable;
    
public class HashDatenstruktur1 
{
    public static void main(String[] args)
    {
        java.util.Hashtable <Integer, Kreis> Kreis = new Hashtable <Integer, Kreis> ();
        
        int id = 0;
        Kreis.put(new Integer(id++),new Kreis(5,145,21)); // irgendwelche zuffalswerte
        Kreis.put(new Integer(id++),new Kreis(15,165,171));// irgendwelche zuffalswerte
        Kreis.put(new Integer(id++),new Kreis(115,475,221));// irgendwelche zuffalswerte
        Kreis.put(new Integer(id++),new Kreis(25,9,21));// irgendwelche zuffalswerte
        Kreis.put(new Integer(id++),new Kreis(1,15,221));// irgendwelche zuffalswerte
        Kreis.put(new Integer(id++),new Kreis(51,215,2121));// irgendwelche zuffalswerte
        
        { // es soll dass 4. Element ausgegeben werden, nicht das Element mit dem Key 4...
            int i=1;
            for(Enumeration<Kreis> en = Kreis.elements();en.hasMoreElements();++i){
                Kreis actualElement = en.nextElement();
                if(i==4){
                    System.out.println("x: "+actualElement.getX()+"  y:"+actualElement.getY());
                }
            }
        }
    }
}
 
 
 
// einfache Container-Klasse
class Kreis{
 
    private int x;
    private int y;
    private int radius;
    
    
    public Kreis(int radius, int x, int y) {
        super();
        this.radius = radius;
        this.x = x;
        this.y = y;
    }
    
    public int getX() {
        return x;
    }
    public void setX(int x) {
        this.x = x;
    }
    public int getY() {
        return y;
    }
    public void setY(int y) {
        this.y = y;
    }
    public int getRadius() {
        return radius;
    }
    public void setRadius(int radius) {
        this.radius = radius;
    }
    
 
}
kann mir jemand helfen?
Ich bekomme beim komplimieren folgende Fehlermeldung:

java:7: not a statement java.util.Hashtable <String, String> Kreis = new java.util.Hashtable <String, String> ();

was ist falsch?

Lieben Dank an alle
 
G

Gast2

Gast
Die Fehlermeldung passt nicht zu deinem Code. Versuchst du wirklich den Code zu kompilieren, vielleicht hilft nen clean.
Du solltest außerdem den Namen der Hashtable ändern, da du eine Klasse hast die genauso heißt. Nenn die doch kreise. Die Zeile an sich lässt sich jedenfalls problemlos kompilieren.

Falls du trotzdem noch Probleme damit hast: Wie kompilierst du? Hast du nen JDK >= 1.5?
 

gehdecke

Mitglied
Hallo EikeB

ich nutze noch die Version 1.4.2_01 da ich diese nutzen soll:-(

Ich habe nochmals alles gesäubert aber leider ohne erfolg:-(

Wo sollte ich den Namen ändern? Stehe gerade völlig auf dem Schlauch.
Er erkennt wohl <> nicht.

woran könnte es noch liegen?

LG Marco
 

gehdecke

Mitglied
so ich habe es dann auch gemerkt:) sorry habe es nun so gelöst:
Java:
public class HashDatenstruktur extends java.util.Hashtable {

public static void main (String [] args) {
java.util.Hashtable kreise = new java.util.Hashtable();

kreise.put(new Integer(0), new Kreis(10, 10, 5));
kreise.put(new Integer(1), new Kreis(20, 20, 10));
kreise.put(new Integer(2), new Kreis(30, 30, 15));
kreise.put(new Integer(3), new Kreis(40, 40, 20));
kreise.put(new Integer(4), new Kreis(50, 50, 25));
kreise.put(new Integer(5), new Kreis(60, 60, 30));
Kreis elementVier = (Kreis)kreise.get(new Integer(3));
System.out.println("x = " + elementVier.getX() + ", y = " + elementVier.getY() + ", Radius = " + elementVier.getRadius() );
}
}

ist das so okay?

dank Dir
 
G

Gast2

Gast
Zumindest würde der Code mit Java 1.4 kompilieren. Ich würde an deiner Stelle allerdings mal Java aktualisieren, deine Version ist von 2003...
 


Schreibe deine Antwort... und nutze den </> Button, wenn du Code posten möchtest...
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Konsolenapplikation wieder verlassen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben