Java programm funktioniert nicht, was tun?

Ich wollte einen taschenrechner in java programmieren aber ab dann wo das programm ausgeführt werden sollte, beendet sich das programm. Das script:

import java.util.Scanner;

public class Main {

public static void addition() {

Scanner scnr = new Scanner(System.in);

int x = scnr.nextInt();

System.out.println("+");

int y = scnr.nextInt();

System.out.println(x + y);

scnr.close();

}

public static void substraction() {

Scanner scnr = new Scanner(System.in);

int x = scnr.nextInt();

System.out.println("-");

int y = scnr.nextInt();

System.out.println(x - y);

scnr.close();

}

public static void multiplication() {

Scanner scnr = new Scanner(System.in);

int x = scnr.nextInt();

System.out.println("*");

int y = scnr.nextInt();

System.out.println(x * y);

scnr.close();

}

public static void division() {

Scanner scnr = new Scanner(System.in);

int x = scnr.nextInt();

System.out.println("÷");

int y = scnr.nextInt();

System.out.println(x / y);

scnr.close();

}

public static void main(String[] args) {

System.out.println(

"enter add for addition;\nsub for substraction;\nmulti for multiplication;\ndiv for division;\n");

Scanner scan = new Scanner(System.in);

String scans = scan.next();

if (scans == "add") {

addition();

} else if (scans == "sub") {

substraction();

} else if (scans == "multi") {

multiplication();

} else if (scans == "div") {

division();

}

scan.close();

}

}

Computer, Programmieren, Java, Informatik
Warum wird mir der Fehler in Java angezeigt?

Hallo Freunde, ich bin gerade dabei einen BMI Rechner in Java (NetBeans) zu programmieren. Allerdings kommt immer bei der if /else if abfrage ein Fehlercode. Ich weiß nicht warum der kommt. Hab mir schon Videos angesehen etc aber bei denen ging das alles. if(Alter<=24) if(ergebnis>=0) System.out.println("ACHTUNG!!! Du hast ein Untergewicht"); if else(ergebnis>=19) System.out.println("PERFEKT!!! Du hast ein Normalgewicht"); if else(ergebnis>=24) System.out.println("ACHTUNG!!! Du hast leicht erhöhtes Übergewicht");

bei den zwei if else Abfragen kommt ein Fehler. Ich hab auch nochmal den ganzen Quelltext reingestellt damit man es sich komplett angucken kann. Hoffe jmd kann mit helfen :)

package bmirechner; import java.util.Scanner;

public class BMIrechner {

public static void main(String[] args) {

    double Körpergröße;
    double Gewicht;
    double Geschlecht;
    double ergebnis;
    int Alter;
    Scanner ScannerKörpergröße = new Scanner(System.in);
    Scanner ScannerGewicht = new Scanner(System.in);
    Scanner ScannerGeschlecht = new Scanner(System.in);
    Scanner ScannerAlter = new Scanner(System.in);

    System.out.println("Herzlich Willkommen zum BMI Rechner von Valentin Wagner");
    System.out.println("Sind Sie ein Mann oder eine Frau?");
    System.out.println("Geben Sie (1) für Frau ein und (2) für Mann ein");
    Geschlecht=ScannerGeschlecht.nextDouble();
    System.out.println("Wie alt sind sie?");
    Alter=ScannerAlter.nextInt();
    if(Geschlecht == 1){
        System.out.println("Bitte geben sie Ihre Körpergröße an");
        Körpergröße=ScannerKörpergröße.nextDouble();
        System.out.println("Bitte geben sie Ihr Gewicht an");
        Gewicht=ScannerGewicht.nextDouble();
        ergebnis=Gewicht / (Körpergröße * Körpergröße);
        System.out.println("Ihr BMI beträgt: " + ergebnis);
        if(Alter<=24)
            if(ergebnis>=0)
                    System.out.println("ACHTUNG!!! Du hast ein Untergewicht");
            if else(ergebnis>=19)
                    System.out.println("PERFEKT!!! Du hast ein Normalgewicht");
            if else(ergebnis>=24)
                    System.out.println("ACHTUNG!!! Du hast leicht erhöhtes Übergewicht");
Warum wird mir der Fehler in Java angezeigt?
Programmieren, Java
Java : Warum wartet der Scanner nicht auf meine Eingabe?

Hallo,

Gebt mal folgenden Code bei euch ein und startet :

package Lernen;

import java.util.Arrays;
import java.util.Scanner;

public class CarSeller {

    int rColor = (int)(Math.random()*9);
    int color;
    int ps;
    int mark;
    String color2;
    String ps2;
    String mark2;
    String[] colorArray = new String[10];

    public void price(int color, int ps, int mark) {
        this.color = color;
        this.ps = ps;
        this.mark = mark;
    }

    public int RandomColor() {
        System.out.println(colorArray[rColor]);
        return 1;
    }

    public static void main(String[] args) {
        CarSeller acess = new CarSeller();
        acess.colorArray[0] = "Black";
        acess.colorArray[1] = "Green";
        acess.colorArray[2] = "Red";
        acess.colorArray[3] = "Orange";
        acess.colorArray[4] = "Blue";
        acess.colorArray[5] = "Cyan";
        acess.colorArray[6] = "White";
        acess.colorArray[7] = "Brown";
        acess.colorArray[8] = "Yellow";
        acess.colorArray[9] = "Grey";

        System.out.println("Hey, what do you want to do ? | BUYCAR | DRIVE | GOINHOUSE | BUYPLOTS | REFUEL | QUIT |");
        Scanner start = new Scanner(System.in);

        if (start.equals("BUYCAR")) {
            System.out.println("What car do you want to buy? | Lamborghini | Porsche | VW | Mercedes | BMW  | Tesla | CANCEL|");
            Scanner a = new Scanner(System.in);
            
            if (a.equals("Lamborghini")) {
                
                  CarSeller Lamborghini = new CarSeller();
                  System.out.println("Which color do you want ? | Choose one ");
                  System.out.println(Arrays.toString(acess.colorArray));
                  System.out.println("Or do you want a random color ? | Random");
                  Scanner colorchoose = new Scanner(System.in);
                  
                  if (colorchoose.equals("Random")) {
                      System.out.println(acess.RandomColor());
                  }


            }

        }
    }

}

Bei mir wartet der irgendwie nicht auf eine Eingabe... Wie behebe ich diesen Fehler ?

PC, Computer, Technik, IT, Programmieren, Java, Informatik

Was möchtest Du wissen?