void replace3sWith4s(int[] replace){
for (int i = 0;i<replace.length;i++){
if (replace[i]==3);{
replace[i]=4;
}
}
}
我的程序正在用#4 替换所有数字,但我想要一个包含 3 的数组,采用一个整数数组,并将任何值为 3 的元素更改为值为 4。
if (replace[i]==3);
^^^
删除分号。它应该是
if (replace[i]==3) {
replace[i]=4;
}
分号将含义更改为
if (replace[i]==3)
;//do nothing
// Separate New block
{
replace[i]=4;
}
(replace[i]==3);
就像写作
(replace[i]==3) { }
什么都不做。
您的代码等效于以下代码:
void replace3sWith4s(int[] replace){
for (int i = 0;i<replace.length;i++){
if (replace[i]==3) { }
replace[i]=4; //Always reachable
}
}
}
要修复您的代码,请删除分号:
(replace[i]==3);
^
您也可以根据您的数组类型在 if 语句中尝试此方法
if (replace[i].equals("3")){
replace[i]=4;
}