【问题标题】:Arrays.binarySearch not finding the last element [duplicate]Arrays.binarySearch 没有找到最后一个元素[重复]
【发布时间】:2018-04-09 16:13:22
【问题描述】:
char[] charArray = new char[] {'h','e','l','l','o','a'};
System.out.println(Arrays.binarySearch(charArray,'a'));

为什么它给我的结果是 -1 而不是 5?

【问题讨论】:

标签: java


【解决方案1】:

Arrays#binarySearch(char[], char) 表示(部分)在进行此调用之前必须对数组进行排序(如通过sort(char[]) 方法)。如果未排序,则结果未定义。 首先对您的charArray 进行排序。喜欢,

char[] charArray = new char[] { 'h', 'e', 'l', 'l', 'o', 'a' };
Arrays.sort(charArray);
System.out.println(Arrays.binarySearch(charArray, 'a'));

【讨论】:

    猜你喜欢
    • 2019-10-12
    • 2021-03-14
    • 1970-01-01
    • 2012-10-03
    • 2013-04-11
    • 1970-01-01
    • 2017-04-08
    • 1970-01-01
    • 2021-06-13
    相关资源
    最近更新 更多