我的代码中出现此错误:java.lang.NumberFormatException
.
m1
用于包含整个表达式的主字符串s
如果除除法之外没有其他运算符,则用于第二个数字f
如果除除法之外没有其他运算符,则用于第一个数字f1
如果除除法以外的运算符也存在,则用于第一个数字s1
如果除除法以外的运算符也存在,则用于第二个数字
这是代码:
b12.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String s="";
String f="";
String f1="";
String s1="";
int z=m1.length();
int pos,pos1;
for(int i=0;i<z;i++)
{
int m=m1.codePointAt(i);
//Checking for division
if(m==47)
{
// Loop to calculate second number
for(int j=i+1;j<z;j++)
{
int d=m1.codePointAt(j);
if(d!=43||d!=45||d!=42||d!=47)
{
s+=m1;
}
else
{ pos=j;
s1+=m1.substring(pos,z);
break;
}
}
// Loop to calculate first number
for(int j=i-1;j>=0;j--)
{
int d=m1.codePointAt(j);
if(d!=43||d!=45||d!=42||d!=47)
{
f+=m1;
}
else
{ pos1=j;
f1+=m1.substring(0,pos1);
break;
}
}
String rev=new StringBuffer(f).reverse().toString();
float ans=Float.parseFloat(rev)/Float.parseFloat(s);
String e=Float.toString(ans);
if(f1==""&&s1=="")
{
m1=""+e;
}
else
{
m1=""+f1+e+s1;
}
z=m1.length();
e1.setText(m1);
}
}
}
});
}