java字符串转换错误number format exception

图片说明

出现了这样的错误:转换为数字时,输入的字符串格式不是数字而是字符空""(是这个意思吧)然后再看到错误定位的那行(下图表示,我是想实现输入多行表达式字符串,
然后对表达式进行计算,但是不知道那一行有哪里不对

public class calculate {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        List<String> str_list=new ArrayList<>();
        while (sc.hasNextLine()) {
            String str = sc.nextLine();
            str_list.add(str);
        }
        for(int i=1;i<str_list.size();i++){
        calculate(str_list.get(i).trim());//显示有错误的那一行

        }

    }

calculate 函数的代码没有贴出来

在calculate里面应该有
int val = Integer.valueOf(传入的参数);
而你这个参数,不是合法的整数,比如是空字符串。

不想报错就加个判断代码

public class calculate {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
List str_list=new ArrayList<>();
while (sc.hasNextLine()) {
String str = sc.nextLine();
str_list.add(str);
}
for(int i=1;i<str_list.size();i++){
if(!str_list.get(i).trim().equls("")){
calculate(str_list.get(i).trim());
}

    }

}

建立在calculate里面进行下非法字符的判断,之后在进行转换

代码 Integer.valueOf(XXXX)没贴出来吧