Java如何搜索数组中的特定值?

package org.nhooo.example.util;

import java.util.Arrays;

public class ArraySearchExample {
    public static void main(String[] args) {
        // 我们创建一个将要进行搜索的整数数组。
        int items[] = {9, 5, 14, 6, 11, 28, 9, 16, 37, 3, 2};

        // Arrays.binarySearch()要求我们对数组进行排序
        //项目,然后再调用该方法。我们可以利用
        //Arrays.sort()方法可以做到这一点。如果我们不对
        // 数组结果将是不确定的,搜索过程
        // 将返回否定结果。
        Arrays.sort(items);

        // 要搜索,我们使用Arrays.binarySearch()方法,该方法接受
        //任何数组类型的参数。为了搜索,我们传递了数组
        // 要搜索的内容和要搜索的密钥。
        //
        // 当搜索项在数组中存在多个时,这
        // 方法不能保证将返回哪一个。
        int needle = 9;
        int index = Arrays.binarySearch(items, needle);

        // 打印出9号在数组中的位置。
        System.out.println("Items: " + Arrays.toString(items));
        System.out.println("Item " + needle + " is at index " + index);
    }
}

代码段的结果是:

Items: [2, 3, 5, 6, 9, 9, 11, 14, 16, 28, 37]
Item 9 is at index 5