如何获取一个数组元素的索引呢?
下文笔者讲述根据一个数组元素获取其对应的索引的方法及示例分享,如下所示
获取数组中元素索引的实现思路:
方式1:
使用Arrays.binarySearch方法
方式2:
使用循环方式依次遍历判断
方式3:
将数组转换为list
使用List对象的indexOf方法
=====================================================
注意事项:
如果数组未排序
Arrays.binarySearch() 方法将无法正常工作。
如果元素在数组中不存在
Arrays.binarySearch() 将返回一个负数
例:获取一个元素再数组中的索引位置
1.使用 Arrays.binarySearch() 方法
int index = Arrays.binarySearch(array, element);
如果元素存在于数组中,则返回它的索引。
如果元素不存在,则返回一个负数,表示元素应该插入的位置(插入点)。
2.使用循环
for (int i = 0; i < array.length; i++) {
if (array[i] == element) {
return i;
}
}
遍历数组并比较每个元素是否等于给定的元素。
如果找到匹配项,则返回它的索引。
3.使用List.indexOf()方法
如果数组已转换为List
List<Integer> list = Arrays.asList(array);
int index = list.indexOf(element);
将数组转换为List
使用List.indexOf() 方法查找元素的索引。
例
int[] arr = {11, 13, 15, 17, 19};
//使用Arrays.binarySearch()
int index1 = Arrays.binarySearch(arr, 15); //输出:2
//使用循环
int index2 = -1;
for(int i = 0; i < arr.length; i++) {
if (arr[i] == 15) {
index2 = i;
break;
}
}
//输出:2
//使用List.indexOf()
List<Integer> list = Arrays.asList(arr);
int index3 = list.indexOf(15); //输出:2
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


