今天帮别人写个程序 无意中发现的!!
private void parse(String str)
{
Pattern p=Pattern.compile("([0-9]+)([+-])([0-9]+)");
Matcher m=p.matcher(str);
String a="0";
String b="0";
String f="+";
System.out.println(a=="0");
System.out.println(f=="+");//返回true
if(m.matches())
{
a=m.group(1);
f=m.group(2);
b=m.group(3);
}
else
{
System.out.println("非法字符");
return;
}
int ia=Integer.parseInt(a);
int ib=Integer.parseInt(b);
System.out.println(f==("+"));//这里由于是在运行时对f重新赋值为“+”但这时的“+”并不在常量池
//int iff=Integer.parseInt(f);
int result=(f.equals("+")?(ia+ib):(ia-ib));
System.out.println("结果="+result);
}