Добавление, вычитание чисел в текстовом представлении

1

Я хотел бы знать, возможно ли добавить 2 или более чисел из текстового представления, лучшим примером, который я мог бы назвать, является калькулятор акций Android. Я прикреплял фотографии своего приложения, первое изображение - это приложение, которое прекрасно работает Изображение 174551

Изображение 174551

Мне также понравится мое приложение для этого (добавив 25 + 25 ИЛИ 25-5 Я получаю foreclose, когда я начинаю операцию, щелкая вычислять. кто-нибудь может помочь мне с этим? Я искал всюду для ответа W/O любую удачу. спасибо

Теги:

3 ответа

1
Лучший ответ

Поскольку вы не опубликовали полный минимальный код, необходимый для репликации проблемы, я просто предполагаю, что вы получаете ввод как тип String или CharSequence, а затем вы пытаетесь сразу превратить его в число, без предварительного разбора его для разных частей.

Вот простой пример разбора ввода String, аналогичный тому, что вы предлагаете обработать. Обратите внимание, что я вовсе не предполагаю, что так вы должны обрабатывать свои входы. (Я просто устанавливаю семя.) Фактически, синтаксический анализ строковых входов для функций калькулятора является очень популярной темой, для которой многие поисковые запросы и различные подходы можно найти в Google. (Также обратите внимание, что некоторые более "надежные" функции разбора калькулятора разбивают входные данные на дерево или стек операторов и операндов.)

public class Foo
{
  public static void main(String[] args)
  {
    String input = "2+2";
    String[] parts = input.split("\\+");
    int operand1 = Integer.parseInt(parts[0]);
    int operand2 = Integer.parseInt(parts[1]);
    int result = operand1 + operand2;
    System.out.println(input + "=" + result);
  }
}
  • 0
    спасибо, я думаю, что это то, что мне нужно, я просто не знаю, где его разместить, в любом случае, я мог бы послать тебе свой код по электронной почте или показать код как-то. я постараюсь редактировать свой пост сейчас
  • 0
    Поскольку вы уже приняли этот ответ, но вы разместили новый код выше ... У вас есть еще один вопрос?
Показать ещё 3 комментария
0

Это требует, чтобы приложение анализировало содержимое текстового представления и интерпретировало его в терминах вычислений, которые он знает, как это сделать. В api нет абсолютно ничего, что автоматически анализирует и оценивает выражения, введенные в текстовое представление.

0

Вам нужно будет разобрать текст, прежде чем преобразовать его в число.

См. http://www.jguru.com/faq/view.jsp?EID=480122 и http://www.ibm.com/developerworks/java/library/j-scala10248/index.html для идеи

Ещё вопросы

Сообщество Overcoder
Наверх
Меню