myGully.com

myGully.com (https://mygully.com/index.php)
-   Programmierung (https://mygully.com/forumdisplay.php?f=67)
-   -   Java ---> Hilfe? (https://mygully.com/showthread.php?t=2176174)

Mario2403 03.12.10 13:14

Java ---> Hilfe?
 
Tag Leute,

hab mal ne Frage und zwar, hier sagt der Kompiler: ';' expected
Wieso?

Code:


  private int Eingabe;
  Ccalc cc = new Ccalc();
  public static void main()
  {
   
    System.out.println("Bitte Rechenart angeben:");
    System.out.println("(1 für Multiplikation, 2 für Divition, 3 für Addition und 4 für Subtraktion:)");
    If (Eingabe == 1) cc.multiplikation;
    else If (Eingabe == 2) cc.divition;
    else If (Eingabe == 3) cc.addition;
    else If (Eingabe == 4) cc.subtraktion;
          }
}

und hier sagt er: getx1 (int) in Cbruch cannot be applied to ()
was hab ich falsch gemacht?

Code:

public class Ccalc
{
   
        public static int[] e = new int[4];
        public static void multiplikation()
    {
        Cbruch Cb = new Cbruch();
        Cb.getx1();
        Cb.gety1();
        Cb.getx2();
        Cb.gety2();
       
        e[0] = x1*x2;
        e[1] = y1*y2;
    }
        public static void divition()
    {
        Cbruch Cb = new Cbruch();
        Cb.getx1();
        Cb.gety1();
        Cb.getx2();
        Cb.gety2();
       
        e[0] = x1*y2;
        e[1] = y1*x1;
    }
        public static void addition()
    {
        Cbruch Cb = new Cbruch();
        Cb.getx1();
        Cb.gety1();
        Cb.getx2();
        Cb.gety2();
               
        e[2] = x1*y2 ;
        e[3] = x2*y1;
        e[1] = y1*y2;
        e[0] = e[2]+e[3];
       
    }
        public static void subtraktion()
    {
        Cbruch Cb = new Cbruch();
        Cb.getx1();
        Cb.gety1();
        Cb.getx2();
        Cb.gety2();
       
        e[2] = x1*y2 ;
        e[3] = x2*y1;
        e[1] = y1*y2;
        e[0] = e[2]-e[3];
    }
}

Diese Klasse habe ich noch (output lass ich weg ;))

Code:

public class Cbruch
{
  private static int x1 = 1;
 
  private static int y1 = 2;
 
  private static int x2 = 3;
 
  private static int y2 = 4;
 
  public static int getx1(int x1)
  {
        return x1;
  }
  public static int gety1(int y1)
  {
        return y1;
  }
  public static int getx2(int x2)
  {
        return x2;
  }
  public static int gety2(int y2)
  {
        return y2;
  }
}

Es kann durch aus sein, dass es was ganz leichtes ist und ich es übersehe, denn ich bin noch nicht so vertraut mit java^^

Ich bedanke mich im voraus schonmal..

MfG Mario

jedirächer 03.12.10 15:03

Selbst ich als Laie in Java sehe das du bei :
Code:

Cb.getx1();
Cb.gety1();
Cb.getx2();
Cb.gety2();

Eine Variable vom Datentyp Integer übergeben muss:
Code:

public static int getx1(int x1) <-- !!!
{
      return x1;
}

Und kann es beim ersten sein, dass du ein } zu viel hast?

Mario2403 03.12.10 15:10

ja ist mir ja klar dass ich nen integer übergeben muss..
nur er sagt ja getx1 (int) in Cbruch cannot be applied to ()
sprich er übergibt ja nen integer aber kann nicht auf () angewendet werde o0
das verstehe ich ja nicht^^..


kann durchaus möglich sein, hab des nur so raus kopiert und eben eventuell zu viel ;)

PornoPenner 03.12.10 18:25

Benutz eine IDE!
Die wird die Probleme in Deinem Code (und das sind verdammt viele!) erkennen, detailliert hervorheben und teilweise automatisch korrigieren können.

Eclipse ist z.B. kostenfrei.

Jester2 03.12.10 18:40

Also
a) übergibt dein Code keinen int und
b) ist es auch nicht nötig da irgendwas zu übergeben.

Ich will jetzt nicht alles korrigieren was du hättest anders machen sollen, aber wenn du schon eine Instanz einer Klasse hast, braucht es keine static Variablen oder Methoden.

Ändere deine Klasse Cbruch zu

Code:

public class Cbruch {
    private int x1 = 1;
    private int y1 = 2;
    private int x2 = 3;
    private int y2 = 4;

    public int getx1() {
        return x1;
    }

    public int gety1() {
        return y1;
    }

    public int getx2() {
        return x2;
    }

    public int gety2() {
        return y2;
    }
}

und deine Methoden in Ccalc brauchen noch eine Zuweisung
Code:

        Cbruch cBruch = new Cbruch();
        int x1 = cBruch.getx1();
        int y1 = cBruch.gety1();
        int x2 = cBruch.getx2();
        int y2 = cBruch.gety2();

Gruß
Jester

Mario2403 04.12.10 16:01

ok..
vielen dank :)

Mario2403 06.12.10 08:02

Allerding bleibt mir noch eine Frage^^
Wie frage ich parameter ab?
Ich hoffe ihr wisst was ich mein^^

MfG Mario

Vielen Dank im voraus

edit:

ich hab auch schon google durch sucht aber um ehrlich zu seien leider nichts gefunden das mir wirklich weiter hilft?! :(

PornoPenner 06.12.10 09:30

Warum fängst Du nicht einfach mit einem Java-Tutorial an?
Es macht keinen Sinn ohne jegliches Grundverständnis zu programmieren, da Dein Code auf einer fehlerhaften Basis wächst.
Ehrlich gesagt ist von dem Code den Du gepostet hast ohne zu übertreiben 90% totaler Unsinn!

Wenn Du möchtest, dass sich andere Mühe machen um Dir zu helfen, dann mach Dir bitte zuvor selbst die Mühe und lies Dich in Java ein! Wenigstens die Grundkenntnisse.

z.B. hier: [Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]

Und bitte benutz eine IDE wie Eclipse!

Mario2403 06.12.10 09:52

Ich benutze ja eig auch Eclipse nur für die Berufsschule soll ich des in BlueJ machen ;)
Ok, dann muss ich mich entschuldigen ..
Danke trotzdem ;)
MfG Mario

PornoPenner 06.12.10 10:38

Was Du wissen solltest:

Was ist und bedeutet public, private, protected?
Was ist eine statische Klasse?
Was sind Funktionen mit Rückgabewerten?
Was sind Funktionsparameter?
Wie initialisiert man Variablen?
Wie kann man Variablen Werte zuweisen (insbesondere Rückgabewerte von Funktionen)?

Soviel ist das nicht, aber damit kommst Du einen gewaltigen Schritt weiter!

Jot8 07.12.10 00:15

tag leute
 
ich habe win7 64 b. JDK von sun lässt sich bei mir nicht instalieren weiss jm warum? danke! :T

PornoPenner 07.12.10 10:27

Zitat:

Zitat von Jot8 (Beitrag 21624455)
ich habe win7 64 b. JDK von sun lässt sich bei mir nicht instalieren weiss jm warum? danke! :T

Liegt vermutlich an Dir!

Mario2403 07.12.10 12:10

Zitat:

Zitat von Jot8 (Beitrag 21624455)
ich habe win7 64 b. JDK von sun lässt sich bei mir nicht instalieren weiss jm warum? danke! :T

hast du auch des richtige runtergeladen? ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:05 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.