小编use*_*283的帖子

java Collections.binarySearch()返回-2

我有一个包含学生信息的文本文件.我使用实现comparator接口的比较器类对这些信息进行排序.这在调用时排序很好Collection.Sort();

然后我comparatorbinarySearch()方法中使用.我有一个int索引,它返回二进制搜索的索引.调试后似乎没有binarySearch()正确排序数据,因为我得到的索引为0表示501是正确的,索引为1表示503表示不正确,索引表示为-2表示502.是binarySearch不是正确使用比较器因此,不会对数据进行适当的排序,因为它以原始形式返回数据.

 =================================================
    First Name: Mark
    Last Name: Evans
    Registration: 501

    Subject: Maths
    Assignment: 1
    Homewok Mark: 70
    Exam Mark: 80

    Assignment: 2
    Homewok Mark: 70
    Exam Mark: 40

    Subject: English
    Assignment: 1
    Homewok Mark: 40
    Exam Mark: 50

    Assignment: 2
    Homewok Mark: 60
    Exam Mark: 70

    Subject: Science
    Assignment: 1
    Homewok Mark: 50
    Exam Mark: 60

    Assignment: 2
    Homewok Mark: 80
    Exam Mark: 45

    Assignment: 3
    Homewok Mark: …
Run Code Online (Sandbox Code Playgroud)

java sorting collections binary-tree

2
推荐指数
1
解决办法
3146
查看次数

标签 统计

binary-tree ×1

collections ×1

java ×1

sorting ×1