Java 数组索引
本文介绍了如何在 Java 中使用不同的技术获取数组的索引。
在 Java 中获取一个整数类型数组中元素的索引
在 Java 中,数组没有 indexOf()
方法,但 ArrayList
自带这个方法,可以返回指定元素的索引。为了访问 indexOf()
函数,我们首先创建一个 Integer
的数组,然后使用 Arrays.asList()
将其转换为一个列表。
请注意,我们使用的是封装类 Integer
而不是基元 int
,因为 asList()
只接受封装类,但它们确实将结果作为基元数据类型返回。我们可以参考下面的例子,在这个例子中,我们向 indexOf()
方法指定元素,即 8,以获得它的索引。我们从 getIndex
得到的结果是 int
类型。
import java.util.Arrays;
public class ArrayIndexOf {
public static void main(String[] args) {
Integer[] array1 = {2, 4, 6, 8, 10};
int getIndex = Arrays.asList(array1).indexOf(8);
System.out.println("8 is located at "+getIndex+" index");
}
}
输出:
8 is located at 3 index
在 Java 中使用 Java 8 Stream API 获取一个数组元素的索引
我们可以使用 Stream API 来筛选出数组项,并获取指定元素的位置。IntStream
是一个接口,它允许一个原始 int
使用 filter
和 range
等流函数。
range()
是 IntStream
的一个方法,它返回从起始位置到数组结束的元素。现在我们使用 filter()
,它接受一个谓词作为参数。我们使用 i -> elementToFind == array1[i]
作为谓词,其中 i
是来自 range()
的值,elementToFind == array1[i]
是检查 elementToFind
是否与 array1
的当前元素匹配的条件。
findFirst()
返回第一个元素,如果条件失败,orElse()
返回-1。
import java.util.stream.IntStream;
public class ArrayIndexOf {
public static void main(String[] args) {
int[] array1 = {1, 3, 5, 7, 9};
int elementToFind = 3;
int indexOfElement = IntStream.range(0, array1.length).
filter(i -> elementToFind == array1[i]).
findFirst().orElse(-1);
System.out.println("Index of " + elementToFind + " is " + indexOfElement);
}
}
输出:
Index of 3 is 1
在 Java 中使用 ArrayUtils.indexOf()
获取一个数组元素的索引
这个例子使用了 Apache Commons 库中的 ArrayUtls
类。我们使用下面的依赖关系来导入库函数到我们的项目中。
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.11</version>
</dependency>
我们使用 ArrayUtils
类的 indexOf()
函数来查找数组的索引。indexOf()
接受两个参数,第一个参数是数组,第二个参数是我们要查找索引的元素。
import org.apache.commons.lang3.ArrayUtils;
public class ArrayIndexOf {
public static void main(String[] args) {
int[] array1 = {1, 3, 5, 7, 9};
int elementToFind = 9;
int indexOfElement = ArrayUtils.indexOf(array1, elementToFind);
System.out.println("Index of " + elementToFind + " is " + indexOfElement);
}
}
输出:
Index of 9 is 4
相关文章
在 Java 中将所有数组元素初始化为零
发布时间:2023/09/17 浏览次数:200 分类:Java
-
本文介绍了如何在 Java 中将所有数组元素初始化为零的程序。你会找到有用的示例代码来指导你完成此过程。
在 Java 中创建动态数组
发布时间:2023/09/17 浏览次数:103 分类:Java
-
本指南教授如何在 Java 中创建动态数组。数组是一种固定大小的数据结构,其大小一旦声明就无法更改。动态数组为我们提供了创建动态大小数组的便利。
在 Java 中查找数组中的最大数
发布时间:2023/09/17 浏览次数:151 分类:Java
-
这篇文章阐明了在 Java 中查找数组中的最大数。数组包含类似类型的数据。虽然你已经可以读取所有元素并对其执行多项操作,但本文将向你展示如何在 Java 中查找数组中的最大值。
从数组中删除元素,然后在 Java 中移动其他元素
发布时间:2023/09/17 浏览次数:181 分类:Java
-
Java 中的数组是相同类型元素的固定大小集合。Java 提供了各种方法来执行与数组相关的不同操作。
在 Java 中移动数组
发布时间:2023/09/17 浏览次数:72 分类:Java
-
在本文中,我们将介绍在 Java 中移动数组元素的方法。在 Java 中使用 for 循环和 temp 变量移动数组
在 Java 中填充数组
发布时间:2023/09/17 浏览次数:55 分类:Java
-
我们将讨论如何在 Java 中填充数组。在本文中,我们用 Java 填充一个数组。在这里填充意味着用一些值填充数组。
在 Java 中保留当前元素的同时调整数组大小
发布时间:2023/09/17 浏览次数:167 分类:Java
-
本文介绍了如何调整数组的大小,同时将其所有当前元素保留在 Java 中。我们提供了一些示例程序供你在执行此字段中的程序时参考。