2011-10-08 142 views
1
for(int i=0;i<number.length();i++){ 
    if(number.charAt(i)==0){ 
     nums[i]=11; 
     System.out.println("bob"); 
    }else{ 
    nums[i]=number.charAt(i); 
    } 
    } 

我试图让所有的0值等于11在数组和数组中的每一次它,但由于某种原因,第一个if语句似乎并没有执行,即使当charAt (i)等于0.有人能解释什么是错的吗?如果语句没有执行

+0

好的,所以我得到,我必须把'0',但现在我想这个nums元素等于11和nums是一个char数组,但每当我把nums [i] ='11';我得到一个不封闭的字符字面错误 – armitage

回答

4

如果这是一个字符串,你的意思是if (number.charAt(i) == '0')

+0

哦,男人谢谢你,我一直在抓我的头,因为这个错误3小时 – armitage

+0

为什么downvote? (显然不是从armitage) –

+0

** char not String(我没有downvote虽然) – Belgi

4

你应该问:

if (number.charAt(i)=='0') 

由于数字0是从字符“0”,和你感兴趣的角色。

1

尝试: if(number.charAt(i)=='0')。 你比较了int和char我的错误。