Hallo Leute, ich hab ein kleines Verständnis Problem bei meinem Code.
Ich soll zahlen übergeben und diese je nach dem ob + oder minus eingeben wird subtrahieren oder addieren. Es hat geklappt nur wenn ich die Zeile mit
String line = scanner.nextLine();
char c = line.charAt(0);
nicht direkt nach dem scanner platziere bekomm ich eine Fehler Meldung. Eine OutofBounds exception. Wenn ich es direkt nach dem Scanner setze funktioniert alles. Wieso?
Ich soll zahlen übergeben und diese je nach dem ob + oder minus eingeben wird subtrahieren oder addieren. Es hat geklappt nur wenn ich die Zeile mit
String line = scanner.nextLine();
char c = line.charAt(0);
nicht direkt nach dem scanner platziere bekomm ich eine Fehler Meldung. Eine OutofBounds exception. Wenn ich es direkt nach dem Scanner setze funktioniert alles. Wieso?
Code:
import java.util.Scanner;
public class EinfacherRechner {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Geben sie die Anzahl der Zahlen ein: ");
int zahl = scanner.nextInt();
int[] zahlen= new int[zahl];
int rechner = 0;
System.out.println("Geben sie an ob die Zahlen subtrahiert - oder addiert + werden sollen ");
String line = scanner.nextLine();
char c = line.charAt(0);
for(int i = 0; i < zahl; i++)
{
zahlen[I] = scanner.nextInt();
}
for(int s = 0; s <zahl; s++)
{
if(c == '+')
{
rechner = rechner +zahlen[S];
}
else if( c == '-')
{
rechner = rechner-zahlen[S];
}
}
System.out.println(rechner);
}
}
Zuletzt bearbeitet: