微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flutter 计算器应用程序 - 如何在没有闭括号的情况下进行计算?

如何解决Flutter 计算器应用程序 - 如何在没有闭括号的情况下进行计算?

我正在使用 Flutter 开发一个新的计算器应用程序。我也在使用 math_expression 包。但不知何故,当我打开一个新的括号并写下数字时,它直到我关闭括号才计算(计算器将结果作为错误给出。我只是想让计算器在关闭括号之前计算我写的方程。我怎么能这样做。我应该使用哪个代码?你能简单解释一下吗?

There it is what kind of calculate I want

]

解决方法

我认为你应该在你的代码中假设所有的括号都结束了。这将适用于您的打印屏幕。但是在 (3+(5* 这样的时刻会出现问题 当您不知道用户想要乘以哪个数字或表达式并在所有方程再次出错后关闭括号时。在这种情况下,最好向您的用户提供他/她尚未写的确切信息,而不是假设某事。

,

在将字符串解析为表达式之前,您可以像这样将括号添加到字符串中:

String currentExpression = "(2+(3*(5)";
  
currentExpression += ")" * ("\(".allMatches(currentExpression).length
                            -"\)".allMatches(currentExpression).length);

该代码查找字符串中剩余的右括号并将其添加到末尾。上面的代码返回:(2+(3*(5))) 这应该是可解析的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。