java 在排序数组上实现线性搜索

java implementation of the linear search on a sorted array

我正在尝试实现 java 代码来测试排序数组的线性搜索,这是我的代码

public class ArrayTest {
public static void main(String [] args) {
    int []x= {12,8,6,23,6,5,17,20,9};
    int y  =linearSearch(x,23);
}
public static  int linearSearch(int []ar,int value) {
    int searchedIndex=-1;
    for(int i=0;i<ar.length;i++) {
        if (ar[i]==value) {
            searchedIndex=i;
            break;
        }
    }
    return searchedIndex ;
}

}

问题是这不会生成任何输出,也不会生成任何错误。谁能解释一下这是什么原因。

像这样:

import java.util.Arrays;

public class ArrayTest {

    public static void main(String[] args) {
        int[] x = {12, 8, 6, 23, 6, 5, 17, 20, 9};
//      Arrays.sort(x);
        int y = linearSearch(x, 23);
        System.out.println("" + y);
//      int z = Arrays.binarySearch(x, 23);
//      System.out.println("" + z);
    }

    public static int linearSearch(int[] ar, int value) {
        for (int i = 0; i < ar.length; i++) {
            if (ar[i] == value) {
                return i;
            }
        }
        return -1;
    }

}

请注意,注释掉的行适用于您是否真的想要排序的数组而不是未排序的数组

为了向输出打印一些东西,你必须使用 System.out.println() function.The 答案返回给变量 y.Just 将变量打印到控制台 output.Moreover, 数组不是 sorted.But, 这对它没有任何问题。