程序的大致思想是这样的:主函数输入字符串"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);
}
但每次都将"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);
}
{
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);
}
}
String STR="0";//在第2个FOR的前面
ch[j].charAt(0)!= STR.charAt(0) //将它换掉原来的判断语句