Калькулятор читает строку, щитает нормально, но если первое число с минусом, прога валиться. Можете помочь?
public static Double eval(StringBuilder s, Double indexOf) {
LinkedList<Double> st = new LinkedList<Double>();
LinkedList<Character> op = new LinkedList<Character>();
String operand = "";
char y;
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
y = ' ';
if (i !=s.length()-1){
i++;
y =s.charAt(i);
i--;
}
String t = String.valueOf(c);
Pattern p = Pattern.compile("^[0-9]*[.,]?+$");
Matcher m = p.matcher(t);
if (isDelim(c))
continue;
if (c == '(')
op.add('(');
else if (c == ')') {
while (op.getLast() != '(')
processOperator(st, op.removeLast());
op.removeLast();
} else if (isOperator(c)) {
while (!op.isEmpty() && priority(op.getLast()) >= priority(c))
processOperator(st, op.removeLast());
//st.add(Double.parseDouble(operand));
//operand="";
op.add(c);
/*if (c == '-'){
operand +=c;
st.add(Double.parseDouble(operand));
System.out.println(operand);
}*/
}else if (i == s.length()-1 ){
operand += s.charAt(i++);
System.out.println(operand);
st.add(Double.parseDouble(operand));
}else {
while (i < s.length() && m.find() )
operand += s.charAt(i++);
--i;
//st.add(Double.parseDouble(operand));
https://github.com/VitYok1104/calculator/blob/master/Frame_11/src/Frame/Frame.java
Виртуальный выделенный сервер (VDS) становится отличным выбором
Помогите разобраться с сравнением символов в Jave, почему sout всегда выводит false, документ тоже в UTF-8Первый символ в доке русская 'с'
Выходит ошибка: incompatible types при попытке присвоить типу float значение с дробью
Как написать SIP сервер на java? Есть код, но как этот сервер запустить я так и не понял