eigenen operator erstellen


  • peter9876
  • 1596 Aufrufe 6 Antworten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • eigenen operator erstellen

    Ist es in java möglich einen eigenen operator zu definieren sodass ich zahlen potenzieren kann. So nach dem Schema x quad y entspricht x hoch y hab leider keine ahnung wie ich das in java realisieren soll.
    Danke im voraus
    peter
    Wenn du zum weibe gehst nimm die Peitsche mit (Nietzsche)
  • Nein soweit ich weiß geht das nicht. Zumindest sieht das Java nicht vor. Da Java open source ist sollte es natürlich möglich sein einen operator in der art von instanceof zu implementieren, aber 1. denke ich nicht das du die lust hast dich soweit in java einzuarbeiten ;) und 2. ist das überladen von operatoren auch nicht zwingend nötig. Ich find auch das es eine tolle Sache in C++ ist, aber man kann auch ohne ;)
    [SIZE="1"]i'm a signature virus. copy me into your signature to help me spread. - smart questions[/SIZE]
  • Mhhh mir ist nicht ganz klar was du machen willst. Operatoren überladen wie du es in C++ oder Dylan kannst ist leider nicht möglich. Also DeinObject = DeinObject_A + DeinObject_B
    Aber das hat Zerd ja schon gesagt.

    Aber ich bin am überlegen. Meinst du int a = b potenzieren c? Das geht leider gar nicht, weil int ein einfacher Datentyp ist, dem man im gegensatz zu Ruby keine weiteren Methoden andichten kann.
    Was du allerdings mach könntest ist die Integer Klasse zu erweitern class MyInt extends Integer { ... } und die ne zusätzliche methode power(Integer a) zu schreiben.

    also nach dem prinzip
    new MyInt a = new MyInt(12).power(new MyInt(2))
  • erst mal danke für die antworten
    das das überladen nicht iwe in c++ geht weis ich, genau deswegen hab ich ja gefragt ob man einen eigenen erstellen kann zu potenzieren das man nicht immer math.pow aufrufen muss.
    @ iNPUTmice
    so in etwa ich will einfach einen operater der mir das potenzieren abnimmt
    Wenn du zum weibe gehst nimm die Peitsche mit (Nietzsche)
  • peter9876 schrieb:

    erst mal danke für die antworten
    das das überladen nicht iwe in c++ geht weis ich, genau deswegen hab ich ja gefragt ob man einen eigenen erstellen kann zu potenzieren das man nicht immer math.pow aufrufen muss.
    @ iNPUTmice
    so in etwa ich will einfach einen operater der mir das potenzieren abnimmt


    Operator-Overloading gibt es in Java nicht.

    Was es evtl. einfacher macht (falls Du JDK >= 5 verwendest), wäre ein statischer Import:

    import static java.lang.Math.pow;

    Dann kannst Du schreiben

    double kbyte = pow(2, 10);


    ohne den Präfix Math.