猿问

Java的Array indexOf在哪里?


Java的Array indexOf在哪里?

我必须遗漏一些非常明显的东西,但我已经遍地搜索过,找不到这种方法。


隔江千里
浏览 459回答 3
3回答

达令说

使用Arrays实用程序类有两种方法可以实现此目的。如果数组未排序且不是基元数组:java.util.Arrays.asList(theArray).indexOf(o)如果数组是基元并且没有排序,那么应该使用其他答案之一提供的解决方案,例如KeremBaydoğan,Andrew McKinlay或Mishax。即使theArray是原始代码(可能发出警告),上面的代码也会编译,但是你会得到完全错误的结果。如果数组已排序,您可以使用二进制搜索来获得性能:java.util.Arrays.binarySearch(theArray, o)

喵喵时光机

数组没有indexOf()方法。也许这个Apache Commons Lang ArrayUtils方法就是你想要的import org.apache.commons.lang3.ArrayUtils;String[] colours = { "Red", "Orange", "Yellow", "Green" };int indexOfYellow = ArrayUtils.indexOf(colours, "Yellow");

慕标琳琳

空无一人。要么使用java.util.List*,要么你可以写自己的indexOf():public&nbsp;static&nbsp;<T>&nbsp;int&nbsp;indexOf(T&nbsp;needle,&nbsp;T[]&nbsp;haystack){ &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i=0;&nbsp;i<haystack.length;&nbsp;i++) &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(haystack[i]&nbsp;!=&nbsp;null&nbsp;&&&nbsp;haystack[i].equals(needle) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;needle&nbsp;==&nbsp;null&nbsp;&&&nbsp;haystack[i]&nbsp;==&nbsp;null)&nbsp;return&nbsp;i; &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;-1;}*您可以使用您的阵列制作一个&nbsp;Arrays#asList()
随时随地看视频慕课网APP

相关分类

Java
我要回答