fehlersuche.

  • Themenstarter Funitra der SuperStier
  • Beginndatum
Status
Nicht offen für weitere Antworten.
F

Funitra der SuperStier

Gast
Hallo,

folgendes Prog hat fehler im Konstruktor von Comic , und findet selbiges nicht. Auserdem findet es die Hashtable factorcondition nicht .

NAch 2 1/2 stündigem Aufregens , das Java Buch flog schon gegen die Wand , dachte ich mir bevor ich in die Tastatur beis und meinen Monitor gegen die Wand schmeis , mach ich ma einen Thread auf .

Code:
import java.util.*;

class Comic{
	String title;
	String condition;
	float baseprice;
	float realprice;
	
	Comic(String intitle,String incondition,float inbaseprice){
		title = intitle;
		condition = incondition;	
		baseprice = inbaseprice;
	}
	
	void setPrice(float factor){
		realprice = baseprice * factor;
	}
	

	
}


class ComicCollection{
	
	
	public static void main (String[] arguments){
		Hashtable factorcondition = new Hashtable();
		float price1 = 3F; 
		factorcondition.put("mint",price1);
		float price2 = 2F;
		factorcondition.put("near mint",price2);
		float price3 = 1.5F;
		factorcondition.put("very fine",price3);
		float price4 = 1F;
		factorcondition.put("fine",price4);
		float price5 = 0.75F;
		factorcondition.put("good",price5);
		float price6 = 0.5F;
		factorcondition.put("poor",price6);
		
		Comic[] comix = new Comic [3];
		comix[0]=new Comic("Spiderman","good",25.4);
		comix[1]=new Comic("Hulk","fine",50);
		comix[2] = new Comic ("The Fantastic Four","poor",20);
		
		for (int i = 0 ; i < comix.length; i++){
			comix[i].setPrice(Float(factorcondition.get(comix[i].condition)));
		}

	
		ausgabe();
		
		
	}

	static void ausgabe(){
		for (int i = 0 ; i < comix.length ; i++){
			System.out.println(comix[i].title+" "+ comix[i].condition+" "+comix[i].baseprice+" "+comix[i].realprice);
		}
	}



}

ich bedanke mich im voraus für jede Unterstützung
 

mic_checker

Top Contributor
guck doch ma genauer in die api:

http://java.sun.com/j2se/1.4.2/docs/api/java/util/Hashtable.html#put(java.lang.Object,%20java.lang.Object)
 

Anselmus

Bekanntes Mitglied
hashtable geht schon, kannst aber nicht float mit put übergeben, nur Float...

und das import muß natürlich zu ComicCollection

Code:
 comix[0]=new Comic("Spiderman","good",25.4);
geht nicht weil das letzte argument ein double ist und kein float

außerdem wird deine ausgabe nicht gehen, weil comix in ausgabe nicht bekannt ist, du hast das nämlich als lokale variable von main gemacht...
 
F

funitraDasFrustrierteLamm

Gast
vielen dank für den tipp , da wär jetzt echt nicht draufgekommen. Das api hielt ich bis jetzt immer für ne virtuelle Ampel die von sun geproggt wurde um dem Pentagon bei spionageabfragen im Internet Vorrang zu gewähren , aber um dir nicht noch einen tieferen eiblick in meine paranuide Persönlichkeit zu gewähren will ich meine ausführungen mit dem hinweis beenden , das ich ausschließlich valium zur Beruihgung nehme.

Sorry wenn das jetzt zynisch klingt , aber das hat mir jetzt ma wirklich garnet weiter geholfen, ich hab ein Java Buch vor mir liegen und wie gesagt ich prob es schon seit zwei einhalb Stunden. Was in Gottes Namen soll mir dann eine auf englisch gehaltene Erklärung von Hashtable helfen, wo ich englisch noch nich ma richtig versteh.
 

mic_checker

Top Contributor
ganz einfach : freunde dich mit der api an.

Wenn du dir die API angeguckt hättest, hättest du gesehen das die Methode zwei Objects erwartet, so dass wie stephan... oben geschrieben hat, du nicht float übergeben kannst, sondern zur Wrapper Klasse Float greifen musst.

Was funzt denn jetzt noch nicht?
 

Anselmus

Bekanntes Mitglied
das ist nicht zynisch, sondern nur quatsch

also hier auf deutsch: was da in der api doc steht sieht wahrscheinlich ca so aus für die methode put:
put(Object, Object)

dh du darfst der methode object nur ein objekt übergeben. float ist aber keins. da mußte erst ein Float draus machen...
 
F

funitraDasFrustrierteLamm

Gast
ich meinte nich dich stephan sondern die antwort davor. Ich prob das grad aus was du mir geraten hast.
 

Anselmus

Bekanntes Mitglied
funitraDasFrustrierteLamm hat gesagt.:
ich meinte nich dich stephan sondern die antwort davor. Ich prob das grad aus was du mir geraten hast.

imho hat mic trotzdem recht... halt erstmal gucken was die methoden erwarten... wenns dann immer noch nicht geht, kann man ja auch fragen ohne so sprüche von der rolle zu lassen
 
F

funitraDasFrustrierteLamm

Gast
danke erst ma für die mühe.
:)

die methode ausgabe hab ich gestrichen und die forschleife direkt in die main geschrieben.
da beschwert er sich jetzt nimma , das mit lokalen variablen find ich echt tückisch das is bei mir nich das erste mal :toll:

import hab ich jetzt zu collection , auserdem hab ich die collection klasse vor comic eingerückt weil er vorher mir ne fehlermeldung gegebn hatte , als ich comic zuerst stehn hatte dann die import und dann die collection klasse :toll:

das man ner hashtable nur objekte zuweisen konnte hatte ich auch gelesen , deswegen schrieb ich ja :

float price1 = 0.5F --> das F macht doch daraus ein object , oder etwa nich ? float price is zwar jetzt nich unbedingt ein FLOAT object , aber in meinem Bsp im Buch steht das genauso ?? -> tortzdem geändert nun Float price :toll:

factorcondition.put ("mint", price1)


Warum übergeb ich wenn ich ne neue Instanz von comic mache ,einen double , konstruktor und auch deklarartion von basispreis sagen doch float ?


Abgesehen davon funktioniert das jetzt alles. Danke nochmal.
 

mic_checker

Top Contributor
du machst daraus kein Float, sondern ein float. float ist ein primitiver Datentyp, Float die zugehörige Wrapper Klasse.
Versuch mal die Variablendeklaration ohne das F hinten, da wird der Compiler meckern, weil er ohne Angaben davon ausgeht das es sich bei der Fließkommazahl um ein double handelt. Das ist auch der Grund warum er beim Konstruktor gemeckert hat.
 
F

funari

Gast
Hallo ,

hatte keine zeit mehr musste weg. Deswegen konnte ich das Prog nur noch kompilieren und nich mehr ausführen.
Das Ausführen funzt nämlich nich. Ich bekomm einen noclassdef error.

Ich hatte mal in den Faq hier nachgeschaut ,da steht :

mit public : wofür frag ich mich , brauch ich doch nur wenns in nem anderen packet is , isses aba nich , sondern im Java standard packet.

classpath setzen : wofür , is doch im standard packet , alle anderen klassen im packet gehen doch

class beim interpret nich hinten anhängen : mach ich nich

die klasse is auch in keinem packet , keinem besonderen drausen sondern im standard packet


Hast du deswegen gefragt stephan? ob beide in der selben datei stehen ?
 
R

Roar

Gast
Anonymous hat gesagt.:
mit public : wofür frag ich mich , brauch ich doch nur wenns in nem anderen packet is , isses aba nich , sondern im Java standard packet.

jung, nicht denken, lesen & machen. ;)
 

Anselmus

Bekanntes Mitglied
nein, deswegen nicht. ich hatte nur einfach so gefragt, das geht zwar, aber nicht so und ich würd das auch nicht machen...

bei mir gehts :wink:

allerdings ohne die for-schleife. ich weiß nicht so genau was du damit machen willst...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Fehlersuche-kann mir jemand helfen? Java Basics - Anfänger-Themen 46
T Fehlersuche Java Basics - Anfänger-Themen 12
A Fehlersuche Java Basics - Anfänger-Themen 2
MR._FIRE_Flower Programm Fehlersuche Java Basics - Anfänger-Themen 16
T Hilfe bei der Fehlersuche Java Basics - Anfänger-Themen 23
D Fehlersuche Java Basics - Anfänger-Themen 9
S brauche hilfe bei Fehlersuche Java Basics - Anfänger-Themen 7
1 Fehlersuche Java Basics - Anfänger-Themen 4
C Fehlersuche Adressbuch *Anfänger* Java Basics - Anfänger-Themen 5
L ReplaceALL - Fehlersuche Java Basics - Anfänger-Themen 11
A Java Fehlersuche Java Basics - Anfänger-Themen 2
N Hoffnungslose Fehlersuche Java Basics - Anfänger-Themen 11
I Anfängerfrage: Fehlersuche Java Basics - Anfänger-Themen 2
S Fehlersuche(NullPointerException) Java Basics - Anfänger-Themen 5
S Fehlersuche bzw beheben Java Basics - Anfänger-Themen 9
P Fehlersuche bzgl. Array-Keys Java Basics - Anfänger-Themen 6
N Fehlersuche Printwriter Java Basics - Anfänger-Themen 6
N Hilfe bei Fehlersuche Java Basics - Anfänger-Themen 2
B Fehlersuche bei LinkedList Java Basics - Anfänger-Themen 3
w0ddes Array out of Bounds - Fehlersuche Java Basics - Anfänger-Themen 2
? hilfe bei Fehlersuche Sortierung List Java Basics - Anfänger-Themen 5
R Fehlersuche - KeyListener, KeyAdaper - Nichts Klappt! Java Basics - Anfänger-Themen 2
D Zeichen im String ändern -> Fehlersuche Java Basics - Anfänger-Themen 7
S Filereader funktioniert nicht! Fehlersuche Java Basics - Anfänger-Themen 9
S Fehlersuche Java Basics - Anfänger-Themen 6
G Fehlersuche bei einer Rechenoperation Java Basics - Anfänger-Themen 2
G Hilfe bei fehlersuche Java Basics - Anfänger-Themen 3
N Fehlersuche. Tasks Java Basics - Anfänger-Themen 14
D Fehlersuche actionPerformed Java Basics - Anfänger-Themen 6
D Fehlersuche: Jar erstellen Java Basics - Anfänger-Themen 6
B Fehlersuche Java Basics - Anfänger-Themen 4
F Fehlersuche erfolglos Java Basics - Anfänger-Themen 3
J Fehlersuche - illegal start of expression Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben