尝试显示数组Java中项目的最后一个索引

我正在尝试显示数组中项目的最后一个索引,例如:


{6,4,7,3,11,4} Last index of 4 = 5


到目前为止我已经写了这个方法:


public int lastIndexOf(int[] nums, int num) {

        int found = 0;

        for (int i = nums.length; i < 0 ; i--) {

            if (nums[i] == num) {

                return i;

            }

        }

        return -1;


    }

为什么这不起作用?我的印象是,您需要在数组长度的开头启动 for 循环,然后向后工作。我希望能够使用 for 循环来执行此操作,我设置了一个条件,如果没有出现返回 -1 的数字,但是当我运行此代码时,无论我输入什么数字,我总是返回 -1在。


我将如何使用 for 循环解决这个问题?


慕码人8056858
浏览 84回答 2
2回答

Qyouu

您的 for 循环条件不正确。应该for&nbsp;(int&nbsp;i&nbsp;=&nbsp;nums.length-1;&nbsp;i&nbsp;>=&nbsp;0&nbsp;;&nbsp;i--)&nbsp;{之前的“i<0”阻止了它进入循环。但是“i = nums.length”会给你一个索引越界错误。需要减 1,因为数组的索引为 0

翻阅古今

您还可以将数组转换为列表并使用List的lastIndexOf方法,这样您就不必自己实现。Arrays.asList(nums).lastIndexOf(num)请注意,如果未找到,lastIndexOf则返回 -1numnums
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java