java - 在Java中使用for循环时如何实现return语句?

标签 java arrays loops return

我正在创建一个方法,如果它存在于数组中,则返回变量 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/

相关文章:

javascript - 带有 ng-repeat 的数组数组

arrays - 使用 For each Statement 循环遍历 VBA Excel 中的多维数组 - 仅第一维

java - 关于 ActivityThread 中使用的 final 关键字的混淆

java - addDomHandler 和 Implements handler 之间的区别

java - Log4j 模式布局 %p token 不起作用

javascript - forEach 模仿 .map() 函数

c - 使用分治法获得数组的第二大元素

Java:带有 Callables 的 ExecutorService:在循环中重用同一个池?需要关机吗?

php - 在 PHP 中循环数组的更好方法是什么?

java - 我可以根据变量而不是在 xml 中添加运行时按钮数量吗