Java中排序对象数组中的搜索元素

可以使用方法在Java中的排序对象数组中搜索元素

java.util.Arrays.binarySearch()。如果所需元素的索引在数组中可用,则此方法返回,否则返回(-(插入点)-1),其中插入点是元素将在数组中插入的位置。给出了一个搜索已排序对象数组中所需元素的程序,如下所示:

示例

import java.util.Arrays;
public class Demo {
   public static void main(String[] args) {
      String str[] = { "P", "M", "A", "T", "D"};
      Arrays.sort(str);
      System.out.println("The sorted array of strings is: ");
      for (String i : str) {
         System.out.println(i);
      }
      int pos = Arrays.binarySearch(str, "M");
      System.out.println("The element M is at index: " + pos);
   }
}

输出结果

The sorted array of strings is:
A
D
M
P
T
The element M is at index: 2

现在让我们了解上面的程序。

str的元素使用Arrays.sort()方法排序。然后使用for循环打印排序后的字符串数组。演示这的代码片段如下-

String str[] = { "P", "M", "A", "T", "D"};
Arrays.sort(str);
System.out.println("The sorted array of strings is: ");
for (String i : str) {
   System.out.println(i);
}

方法Arrays.binarySearch()用于查找元素“ M”的索引。然后显示。演示这的代码片段如下-

int pos = Arrays.binarySearch(str, "M");
System.out.println("The element M is at index: " + pos);