Frage von der122345, 69

Java in javascrip umwandeln?

hallo kann mir jemand den code in Java in JS umwandeln?

1.java

public static final Tower lightningTower0 = new TowerLightning(0, -25, -1, 10, 40, 8, 10, 8).getTextureFile("tower1");

2.java

    public void updateMouse(MouseEvent e){
        if(scene == 1){
            if(mouseDown && hand == 0){
                if(e.getXOnScreen() >= ((int) (12 + 12 + (int)(frameWidth / 11.52) + frameWidth / 40 + 12)) && e.getXOnScreen() <= ((int) (12 + 12 + 125 + frameWidth / 40 + 12 + (18 * towerSize)))){
                    if(e.getYOnScreen() >= (15 * (int) towerSize) + 12 + frameHeightBorder && e.getYOnScreen() <= (15 * (int) towerSize) + 12 + (int) towerSize * 2 + frameHeightBorder){
                        for(int i=0;i<Tower.towerList.length;i++){
                        
                            if(e.getXOnScreen() >= ((int) (12 + 12 + (int)(frameWidth / 11.52) + frameWidth / 40 + 12)) +(int)(i/2)*(int)towerSize && e.getXOnScreen() <= ((int) (12 + 12 + 125 + frameWidth / 40 + 12 + towerSize)) + (int)(i/2)*(int)towerSize && e.getYOnScreen() >= (15 * (int) towerSize) + 35 + frameHeightBorder + (int)(i%2)*(int)towerSize && e.getYOnScreen() <= (15 * (int) towerSize) + 35 + (int) towerSize + frameHeightBorder + (int)(i%2)*(int)towerSize){
                            
                            if(user.player.money >= Tower.towerList[i].cost){
                                System.out.println("[Shop] you bought a tower for " + Tower.towerList[i].cost + "!");   
                                
                            
                             if(user.player.live >= Tower.towerList[i].health)
                                System.out.println("you lost " + Tower.towerList[i].health + " health");    
                                
                             if(user.player.ffood >= Tower.towerList[i].food)
                                    System.out.println("you lost " + Tower.towerList[i].food + " food");    
                                    
                             if(user.player.sshop >= Tower.towerList[i].shop)
                                    System.out.println("you lost " + Tower.towerList[i].shop + " shop");    
                            
                             if(user.player.hhappy >= Tower.towerList[i].happy)
                                    System.out.println("you lost " + Tower.towerList[i].happy + " happy");  
                            
                                hand = i+1;
                            
                                return; 
Antwort
von tWeuster, 29

Also erstmal an alle bisherigen Antwortgeber. Ihr habt im Grunde recht, Java hat nichts mit Javascript zu tun. Dennoch kann man den Code von einer Sprache in eine andere übersetzten oder besser, die Funktionsweisen zweier Programme in eine andere Sprache portieren. Ich weiß ja was hier zum teil für Hahnebüchen gefragt wird, in dem Fall finde ich die Frage aber gar nicht so verkehrt.

Zur Frage: Dein Codeabschnitt ist leider zu unvollständig als dass es sinnvoll wäre in dir zu übersetzten. Der complette Code besteht eigentlich aus Variablen, arrays und objekte die ich nicht kenne. Keine ahnung was sie heißen oder bedeuten. Ohne deine Javascript Struktur zu kennen würde es keinen Sinn machen dir das zu übersetzen.

Sofern es sich nicht um ganze Programme (oder Apps) handelt sondern nur um kleine Methoden oder Funktionen rate ich sowieso die Sachen neu zu bauen. Schau dir an was die Methode macht oder kann (Sieht mir sehr nach irgendwelchen Cursor Bewegungen aus) und programmier es in Javascript einfach neu. Da hast du zwei Vorteile - erstens, code den du verstehst und zweitens code der auf deine Javascript umgebung angepasst ist. So könntest du Java Fragmente mit Jquery nachbauen oder mit anderen Frameworks die du benutzt.

Antwort
von FelixCrafting, 38

Java hat nichts mit JavaSkript zu tun.
Das geht nicht.

Antwort
von Willibergi, 38

Java ist nicht JavaScript!

Man kann nicht einfach so Sprachen übersetzen.

LG Willibergi

Kommentar von userfromberlin ,

Sprachen sind zum Übersetzen sehr wohl geeignet; nur die Frage, ob gf ein code-translator ist, würde ich verneinen!

Kommentar von Willibergi ,

"Sprachen sind zum Übersetzen sehr wohl geeignet"

Inwiefern?

Nicht jedes Java-Programm kann in JavaScript "übersetzt" werden.

Wenn dies so wäre, gäbe es keine verschiedenen Programmiersprachen mehr - man kann ja mit einer alles machen...

LG Willibergi

Kommentar von userfromberlin ,

Natürlich. Aber Grundstrukturen und einfache Anwendungen lassen sich sehr wohl in beiden Sprachen darstellen.

Kommentar von Sarkophator ,

> Wenn dies so wäre, gäbe es keine verschiedenen Programmiersprachen mehr - man kann ja mit einer alles machen...
Wie viel man mit einer Sprache machen kann sagt ja nicht zwingend was darüber aus, ob es sinnvoll ist diese Sprache in jedem Anwendungsfall einzusetzen. Und die Grenzen können auch im Falle von einer Übersetzung von Java nach JavaScript schwammig werden. (Gerade Performance ist da ein großes Problem)

Natürlich hängts auch davon ab wie viel benötigt wird. Das Beispiel hier vergleicht nur Mauspositionen und Werten von Objekten/Arrays, was sich sicher ohne Probleme über JavaScript implementieren lässt.

Kommentar von MalNachgedacht ,

Nicht jedes Java-Programm kann in JavaScript "übersetzt" werden.

Wenn dies so wäre, gäbe es keine verschiedenen Programmiersprachen mehr - man kann ja mit einer alles machen...

Kann man theoretisch auch - man könnte z.B. alles in Assembler programmieren.
Es wäre eben nur extrem umständlich und mühsam.
Und deswegen hat man eben höhere Programmiersprachen entwickelt - teils solche die sich nur für spezielle Gebiete besonders gut eignen.

Natürlich kann prinzipiell auch jedes Java-Programm in Java-Script übersetzt werden. Man müßte es einfach erst in Java Byte Code übersetzen (was jeder Java-Compiler macht) und anschließend für jeden in der JVM vorgesehen Bytecode eine entsprechende kleine Javascript-Routine programmieren die diesen Bytecode ausführt.

Das wäre zwar kaum noch lesbar und alles andere als schnell - aber prinzipiell kein größeres Problem....
Sinn macht es also nicht - aber machbar wäre es....

Kommentar von Willibergi ,

"Natürlich kann prinzipiell auch jedes Java-Programm in Java-Script übersetzt werden."

Würde ich so nicht sagen.

Man könnte ein Java-Programme in JavaScript-Programme "übersetzen", allerdings wäre dann eine deutliche Abwandlung der Bedienstruktur erforderlich.

Versuch' mal in JavaScript ein JFrame zu bauen.

Natürlich könnte man die Bedienelemente und das GUI so aussehen lassen und ein PopUp als JFrame nehmen, allerdings wäre das, wie gesagt, kein JFrame mehr.

Das Problem der Übersetzung von Programmiersprachen liegt vor in den bereits implementierten Klassen.

Denn diese können nicht ohne Weiteres richtig in andere Sprachen übersetzt werden.
(v. a. von Java in Skriptsprachen)

LG Willibergi

Antwort
von hdhdhddedede, 10

JAVASCRIPT ist nicht Java aber wenn du willst kann ich das "übersetzen" was geht wenn du willst einfach kommentieren

Antwort
von medmonk, 36

Java und JavaScript sind zwei Paar Schuhe. Wenn du aus Äpfeln Mus machst, wird daraus auch keine Birne. Comprende, Amigo? ;-) 

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten