Java vector : How to find out the would-be index of an item

标签 java eclipse vector

我想在Java中执行以下操作:我有一个元素,我想知道如果它被插入到其他对象的集合中(假设它们已经排序),它的索引是什么。

所以如果我有一个像这样的整数 vector : 1,3,5,7,9 我手头有 int '2',我知道它的'可能'索引是 i=1,介于值 1 和 3 之间。

最佳答案

// assumes vector is sorted
// and that vector does not yet contain searchedObject
insertionPoint = -1 * Collections.binarySearch(vector,searchedObject) - 1;

Collections.binarySearch() 的定义州

返回:

搜索关键字的索引(如果它包含在列表中);否则,(-(插入点) - 1)。插入点定义为将键插入到列表中的点:如果列表中的所有元素都小于指定键,则为大于键的第一个元素的索引,或 list.size()。请注意,这保证了当且仅当找到 key 时返回值>= 0。

关于Java vector : How to find out the would-be index of an item,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4045817/

相关文章:

java:如何检查csv文件是否有标题

java - 在Android studio中使用.so(共享对象)文件

c++ - std::vector new 内存不足

c++ - vector<double> f(long int N) 的问题

Java、Cucumber 和 Selenium : Problems with navigate(). to()

java - 如何获取Android模拟器当前的日期格式

java - Eclipse:无法加载 JNI 共享库

java - jmenubar 下方的 Eclipse 图标

java - 您可以放入 Eclipse java 文档中的代码行数是否有限制

c++ - 为什么使用 'Structure' 作为其数据类型之一创建指向超出特定数量 (30) 的 'stxxl:Vector' 的实例的指针失败?