我想用数组0替换数组中所有2的倍数,我觉得好像这段代码做了这个,但4,6和8在输出中保持不变。 我做了一些愚蠢的错事吗?
public static void markOfMultiples(int[]listOfNumbers, int number)
{
for(int i = 0; i<listOfNumbers.length; i++)
{
if (listOfNumbers[i]%number == 0)
{
listOfNumbers[i] = 0;
}
}
}
答案 0 :(得分:0)
在我的情况下,你的方法工作正常,这完全取决于你如何调用你的方法
你应该像
一样调用你的方法public static void main(String[] args)
{
int num[]={2,4,6,11,13,8};
markOfMultiples(num,2);
}
您的方法保持不变
public static void markOfMultiples(int[]listOfNumbers, int number)
{
for(int i = 0; i<listOfNumbers.length; i++)
{
if (listOfNumbers[i]%number == 0)
{
listOfNumbers[i] = 0;
}
System.out.println(listOfNumbers[i]);//added by me to track what's going on
}
并且工作正常!