S
Salomon
Gast
Hallo liebe Java Freunde
also ich habe hier ein Quelltext bei dem ich nicht den Fehler finde warum ich beim ausführen Fehlermeldungen bekomme.
das zweite ist wie bekomme ich ein Runntimeexaption rein die aufföängt wenn das Element Stack leer ist. irgendwie kann ich mir aus verschiedenen Quellen nicht erschließen wie ich sowas mache.
ich hoffe ihr meckert jetzt nicht zu viel über meinen Quelltext ich bin Blutiger Anfänger.
Danke euch schon mal im vorraus
also ich habe hier ein Quelltext bei dem ich nicht den Fehler finde warum ich beim ausführen Fehlermeldungen bekomme.
das zweite ist wie bekomme ich ein Runntimeexaption rein die aufföängt wenn das Element Stack leer ist. irgendwie kann ich mir aus verschiedenen Quellen nicht erschließen wie ich sowas mache.
ich hoffe ihr meckert jetzt nicht zu viel über meinen Quelltext ich bin Blutiger Anfänger.
Danke euch schon mal im vorraus
Code:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package uebung403_2;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
*
* @author Salomon
*/
public class Main {
static StringBuilder Stack = new StringBuilder();
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
// TODO code application logic here
System.out.println("ausdruck eingeben");
BufferedReader in = new BufferedReader(
new InputStreamReader(System.in));
String wort = in.readLine();//ausdruck einlesen
int h = checkExpr(wort);//Ausdruck übergeben
Stack.insert(h,'$');
System.out.println(Stack);
}
static char pop() //throws IOexception;
{
int lang = Stack.length();
Stack.deleteCharAt(lang);
return (Stack.charAt(lang));
}
static void push(char element) {
Stack.append(element);
}
static int checkExpr(String expression)
{
int j = 0;
for (int i = 0; i <= expression.length(); i++) {
switch (expression.charAt(i)) {
case '(':
push('(');
case '[':
push('[');
case '{':
push('{');
case ')': {
if ((Stack.charAt(Stack.length()-1)) == ('(')) {
pop();
} else {
j=i;
}
}
case ']': {
if ((Stack.charAt(Stack.length()-1)) == (']')) {
pop();
} else {
j=i;
}
}
case '}': {
if ((Stack.charAt(Stack.length()-1)) == ('(')) {
pop();
} else {
j=i;
}
}
default:
j=-1;
}
}
return j;
}
}