为什么这个IF判断总是出错?
程序的大致思想是这样的:主函数输入字符串 "2007 ",调用fangfa(),定义了一个CH[]数组,将 "2007 "拆分给给数组.最后判断该字符不为0就输出.
但每次都将 "2007 "都输出来,IF判断根本没用.但程序又没错.为什么啊?
public class Money
{
private static char mm;
public static String fangfa(String money)
{
String[] ch=new String[4];
for(int i=0;i <money.length();i++)
{
char mm=money.charAt((money.length()-1)-i);
ch[i]=String.valueOf(mm);
}
for(int j=0;j <money.length();j++)
{
if(ch[j] != "0 ")
System.out.println(ch[j]);
}
return money;
}
public static void main(String args[])
{
String in= "2007 ";
String end=fangfa(in);
}
------解决方案--------------------用!(String.equals( "0 "))当作判断条件试试
------解决方案--------------------public class Money
{
private static char mm;
public static String fangfa(String money)
{
String[] ch=new String[4];
for(int i=0;i <money.length();i++)
{
char mm=money.charAt((money.length()-1)-i);
ch[i]=String.valueOf(mm);
}
for(int j=0;j <money.length();j++)
{
if(!ch[j].equals ( "0 ")) //使用equals()比较内容
System.out.println(ch[j]);
}
return money;
}
public static void main(String args[])
{
String in= "2007 ";
String end=fangfa(in);
}
}