我正在尝试设置一个程序,提示用户输入仅包含加法的数学公式并将其放在括号中。我的代码用于搜索这些方程并返回方程的总和。
我遇到问题的部分是当我尝试从代码中拆分添加符号时,解析它以便我可以将其转换为int。但是当我尝试拆分时,我收到的错误是cannot convert String[] to String
。
这是我到目前为止的编码:
String userinput = in.nextLine();
int parentheses;
int parenthesesclose, parse;
String usersubstring;
String split;
while (parentheses >= 0) {
parentheses = userinput.indexOf("(");
parenthesesclose = userinput.indexOf(")");
usersubstring = userinput.substring(parentheses + 1, parenthesesclose);
split = usersubstring.split(+);
split.trim();
if (split.isdigit) {
parse = Interger.parseInt(split);
}
}
答案 0 :(得分:2)
您应该将变量split声明为String []。 split()将返回一个字符串数组。
String userinput=in.nextLine();
int parentheses;
int parenthesesclose, parse;
String usersubstring;
String[] split;
while ( parentheses >= 0){
parentheses = userinput.indexOf("(");
parenthesesclose = userinput.indexOf(")");
usersubstring = userinput.substring( parentheses + 1, parenthesesclose);
split = usersubstring.split("+");
}
答案 1 :(得分:2)
正如错误消息所示,String#split()
returns a String[]
,这是一个字符串数组。将您的声明更改为:
String[] split;
答案 2 :(得分:0)
Method split返回一个字符串数组,因此您应该将split变量的类型更改为数组。
此外,乘法符号不在brakes中。
这个变量声明是否是本地的?如果是,则应定义它们,否则堆中可能存在错误。