Я использую интерпретатор Bean Shell в цикле for, как этот
for(int i = 0; i <functionSize; i++){
interpreter.set("x", i);
yvalues[i] = (Integer) interpreter.eval(functionString);
}
Проблема, с которой я столкнулся, заключается в том, что когда я выполняю функцию 2 ^ x, я получаю действительно странный вывод. Список первых нескольких значений y выглядит следующим образом: 2, 3, 0, 1, 6, 7, 4, 5, 10, 11, 8, 9 ...
Кто-нибудь знает, как заставить интерпретатор оболочки бина правильно оценивать полномочия?
Edit: я хотел бы использовать интерпретатор оболочки bean вместо написания математического парсера. Кто-нибудь знает, как я могу получить оболочку bean для оценки степеней функций x?