Java 如何从字符串计算表达式?

Java 如何从字符串计算表达式?,java,Java,我想从字符串计算表达式 public static void main(String[] args) { String test = "2+3"; System.out.println(Integer.parseInt(test)); } 它返回一个NumberFormatException错误。如何修复此错误?它不适用于基本java(AFAIK),可能适用于某些表达式计算器库。 您必须解析字符串。例如: String[] nums = string.

我想从字符串计算表达式

public static void main(String[] args) {

        String test = "2+3";
        System.out.println(Integer.parseInt(test));
    }

它返回一个NumberFormatException错误。如何修复此错误?

它不适用于基本java(AFAIK),可能适用于某些表达式计算器库。 您必须解析字符串。例如:

String[] nums = string.split("+");
List<Integer> numbers = new ArrayList<Integer>();
for(String num : nums) {
    numbers.add(Integer.parseInt(num));
int result = addNumbers(numbers);
String[]nums=String.split(“+”);
列表编号=新的ArrayList();
用于(字符串编号:nums){
add(Integer.parseInt(num));
int result=addNumbers(数字);
其中addNumbers是您编写的在列表中添加数字的方法。
如果你有更多的操作,你也必须解析操作符,构建一个表达式树,然后遍历它。

这对基本java(AFAIK)不起作用,可能对一些表达式计算器库不起作用。 您必须解析字符串。例如:

String[] nums = string.split("+");
List<Integer> numbers = new ArrayList<Integer>();
for(String num : nums) {
    numbers.add(Integer.parseInt(num));
int result = addNumbers(numbers);
String[]nums=String.split(“+”);
列表编号=新的ArrayList();
用于(字符串编号:nums){
add(Integer.parseInt(num));
int result=addNumbers(数字);
其中addNumbers是您编写的在列表中添加数字的方法。 如果有更多的操作,还必须解析操作符,构建表达式树,然后遍历它