我正在创建一个方法,如果它存在于数组中,则返回变量 elt。如果它不存在于数组中,我需要返回 null。
问题是,我正在使用 for 循环中的 if 语句检查数组中每个项目中的变量 elt。我不认为我可以在 for 循环中的 if 语句的末尾放置 return 语句,因为每次执行 if 语句时,潜在的返回值都会不同。我认为每次 for 循环循环时都会产生一个新的返回值。为了解决这个问题,我创建了一个名为 exist 的 boolean 临时变量。如果为真,该方法将返回变量 elt。如果为假,它将返回 null。我正在使用的代码如下。
public T remove(T elt) {
boolean exist;
for (int i=0; i<data.length; i++) {
if (data[i] == elt) {
data[i] = null;
size--;
exist = true;
System.out.println(exist);
for (++i; i < data.length; i++) {
data[i-1] = data[i];
}
}
}
if (exist = true)
return elt;
else
return null;
}
我的问题是,有没有办法在不使用临时变量的情况下将 return 语句塞进方法中?
最佳答案
您几乎可以在任何地方放置 return 语句。
要回答您的问题,您可以在内部 for 循环之后放一个 return,如下所示:
public T remove(T elt) {
for (int i=0; i<data.length; i++) {
if (data[i] == elt) {
data[i] = null;
size--;
System.out.println(exist);
for (++i; i < data.length; i++) {
data[i-1] = data[i];
}
return elt;
}
}
return null;
}
关于java - 在Java中使用for循环时如何实现return语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33238974/