Ich versuche einen einfachen Text zeigen zu lassen, wenn b größer ist als a, nur immer kommt, dass ein sich ein Fehler in System.out.printIn verbirgt und irgendwelche Symbole fehlen?
Könnte mich jemand aufklären?
Java:
publicclassCIfaufgabe{publicstaticvoidmain(String[]args){int a =1;int b =2;}publicvoidIfaufgabe(int a,int b){this.a =1;this.b =2;}publicvoidRechnung(int a,int b,int c){if( a < b)System.out.printLn("A ist kleiner als B");}}
Die Fehlermeldung beim Compilen:
Java:
CIfaufgabe.java:17: cannot find symbol
symbol : method printLn(java.lang.String)
location :class java.io.PrintStreamSystem.out.printLn("A ist kleiner als B");4 errors
Methodennamen schreibt man klein, aber das nur am Rande. Der Code sieht auch
sonst merkwürdig aus. "Ifaufgabe" sieht mehr wie ein Konstruktor aus. Und a und
b sollte auch Instanzvariablen sein.
Methodennamen schreibt man klein, aber das nur am Rande. Der Code sieht auch
sonst merkwürdig aus. "Ifaufgabe" sieht mehr wie ein Konstruktor aus. Und a und
b sollte auch Instanzvariablen sein.
Ja das sollte ein Konstruktor sein.
Ich hab das nochmal probiert diesmal etwas verdeutlicht
Java:
classCAufgabe{int m_erstezahl;int m_zweitezahl;// KonstruktorCAufgabe(int erste,int zweite){
m_erstezahl = erste;
m_zweitezahl = zweite;}// Vergleichvoidvergleich(int erste,int zweite){if( erste < zweite ){System.out.println("Die erste Zahl ist groeser als die zweite");}else{System.out.println("Die zweite Zahl ist groeser als die erste");}}//main KlassepublicclassCIfaufgabe{publicstaticvoidmain(string[] args){// 2 neue AufgabenCAufgabe aufgabe =newCAufgabe("2","1");CAufgabe aufgabee =newCAufgabe("2","3");}}}
Java:
CIfaufgabe.java:22: cannot find symbol
symbol :class string
location:classCAufgabe.CIfaufgabepublicstaticvoidmain(string[] args){^CIfaufgabe.java:25: cannot find symbol
symbol : constructor CAufgabe(java.lang.String,java.lang.String)
location:classCAufgabeCAufgabe aufgabe =newCAufgabe("2","1");^CIfaufgabe.java:26: cannot find symbol
symbol : constructor CAufgabe(java.lang.String,java.lang.String)
location:classCAufgabeCAufgabe aufgabee =newCAufgabe("2","3");^CIfaufgabe.java:22: inner classes cannot have static declarations
publicstaticvoidmain(string[] args){^4 errors
Davon abgesehen achte auf bessere Formation. Man erkennt z. B. kaum wo die Main definiert ist, auf dem ersten Blick nicht mal dass eine 2. enclosed Class drinnen steht. Außerdem denk besser über bessere Variablennamen nach. Da fängt man an zu rätseln für was das "m" steht. Davon abgesehen verwendet man Underlines nur in Konstanten. Die if ist unvollständig, wenn erste 4 und zweite 4 ist, ist die Ausgabe "Die zweite Zahl ist groeser als die erste".
Außerdem greifst du auf die beiden Klassenvariablen nie lesend zu.
Du könntest auch den trinären Operator verwenden:
Java:
voidvergleich(int erste,int zweite){System.out.println(erste < zweite ?"Die erste Zahl ist groeser als die zweite":"Die zweite Zahl ist groeser als die erste");}
Und wieso hat vergleiche() wieder zwei Parameter? Braucht es doch gar nicht, kannst ja die Klassenmember verwenden, sonst bringt sich die Initialisierung nichts. und vergleiche solltest du in der main dann auch aufrufen