数组查找元素第一次出现的索引号

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组查找元素第一次出现的索引号相关的知识,希望对你有一定的参考价值。

技术分享图片
/*
    需求:数组元素查找(查找指定元素第一次在数组中出现的索引)
    
    分析:
        A:定义一个数组,并静态初始化。
        B:写一个功能实现
            遍历数组,依次获取数组中的每一个元素,和已知的数据进行比较
            如果相等,就返回当前的索引值。
*/
View Code
技术分享图片
class ArrayTest5 {
    public static void main(String[] args) {
        //定义一个数组,并静态初始化
        int[] arr = {200,250,38,888,444};
        
        //需求:我要查找250在这个数组中第一次出现的索引
        int index = getIndex(arr,250);
        System.out.println("250在数组中第一次出现的索引是:"+index);
        
        int index2 = getIndex2(arr,250);
        System.out.println("250在数组中第一次出现的索引是:"+index2);
        
        int index3 = getIndex2(arr,2500);
        System.out.println("2500在数组中第一次出现的索引是:"+index3);
    }
View Code

/*
需求:查找指定数据在数组中第一次出现的索引
两个明确:
返回值类型:int
参数列表:int[] arr,int value
*/

技术分享图片
    public static int getIndex(int[] arr,int value) {
        //遍历数组,依次获取数组中的每一个元素,和已知的数据进行比较
        for(int x=0; x<arr.length; x++) {
            if(arr[x] == value) {
                //如果相等,就返回当前的索引值。
                return x;
            }
        }
        
        //目前的代码有一个小问题
        //就是假如我要查找的数据在数组中不存在,那就找不到,找不到,你就对应的返回吗?
        //所以报错。
        
        //只要是判断,就可能是false,所以大家要细心。
        
        
        //如果找不到数据,我们一般返回一个负数即可,而且是返回-1
        return -1;
    }
    
    public static int getIndex2(int[] arr,int value) {
        //定义一个索引
        int index = -1;
        
        //有就修改索引值
        for(int x=0; x<arr.length; x++) {
            if(arr[x] == value) {
                index = x;
                break;
            }
        }
        
        //返回index
        return index;
    }
}
View Code

 






以上是关于数组查找元素第一次出现的索引号的主要内容,如果未能解决你的问题,请参考以下文章

根据给出的元素查找此元素在数组中第一次出现的索引

常用类

数组冒泡排序选择排序二分查找法

在 C# 中查找子数组的第一个出现/起始索引

如何在排序数组中查找第一次出现最大值的索引

代码题(12)— 二分查找