Java Arrays.binarySearch(Object [],int,int,Object)签名无法识别

dmo*_*nch 2 java eclipse arrays signature binary-search

我正在尝试使用Java API规范中记录的binarySearch方法,但我的IDE(Eclipse(Helios))无法识别签名.

我的课程归结为它的2个数据成员以及我试图调用Arrays.binarySearch的方法:

import java.util.Arrays; // Access Arrays class
public class SortedStringArrayList {
    // member data
    private String[] items;
    private int size;

    // methods
    public int testBinSearch(String item) {
        int index = Arrays.binarySearch(items, 0, size, item);
    }
}
Run Code Online (Sandbox Code Playgroud)

当我在方法中编写代码时,Eclipse假定我想要一个不同的签名并告诉我:

Arrays类型中的方法binarySearch(int [],int)不适用于参数(String [],int,int,String)

它建议可用的binarySearch的签名是:

我是Java/Eclipse的新手.谁知道问题是什么?

Dan*_*rov 5

您需要告诉Eclipse使用Java 1.6(在项目设置下).我猜你是1.5.1.5及更早版本只有基本版本binarySearch,没有fromIndextoIndex.

如果您希望具有较旧JRE的用户能够运行您的程序,您可以binarySearch1.6源代码复制实现并将其粘贴到您自己的代码中.