Как правильно написать функциюvaluPostfix?

+ соответствует хотя бы одному символу

* соответствует любому числу (включая 0) символов

. ? указывает ленивое выражение, поэтому оно будет соответствовать как можно меньше символов.

1
задан Hulk 18 January 2019 в 08:08
поделиться

1 ответ

Проблема в том, что метод eval возвращает int, и вы пытаетесь поместить результат в Stack<Character>.

Я не совсем уверен, что вы пытаетесь сделать здесь, но это не компилируется, потому что int нельзя напрямую преобразовать в Character.

Вы можете решить проблему компиляции, вставив явное приведение к char

stack.push((char)eval(token, a, b));

, но это преобразует результат eval в значение в диапазоне char, что вероятно, не то, что вы хотите сделать для значений, которые могут легко выходить за пределы диапазона [0..65535] char .

0
ответ дан Hulk 18 January 2019 в 08:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: