当前位置: 首页 > 编程笔记 >

Java Collections BinarySearch()方法与示例

雷曜灿
2023-03-14
本文向大家介绍Java Collections BinarySearch()方法与示例,包括了Java Collections BinarySearch()方法与示例的使用技巧和注意事项,需要的朋友参考一下

集合类binarySearch()方法

语法:

    public static int binarySearch(List l, Type key_ele);
    public static int binarySearch(List l, Type key_ele, Comparator com);
  • binarySearch()方法java.util包中可用。

  • binarySearch(List l,Type key_ele)方法用于在二进制搜索的帮助下在给定列表(l)中找到给定对象(key_ele)。

  • binarySearch(List l,Type key_ele,Comparator com)方法用于在给定列表(l)中查找给定对象(key_ele),并且必须基于定义的Comparator对象对列表进行排序。

  • 这些方法在查找给定元素时可能会引发异常。
    ClassCastException:当给定的参数List元素彼此不可比较时,可能引发此异常。

  • 这些是静态方法,可以通过类名进行访问,如果尝试使用类对象访问这些方法,则也不会出现任何错误。

参数:

  • 在第一种情况下,“ binarySearch(List l,Type key_ele)”

    • 列表l –表示列表对象。

    • key_ele类型–表示要搜索的关键元素。

  • 在第二种情况下,“ binarySearch(List l,Type key_ele,Comparator com)”

    • 列表l –表示列表对象。

    • key_ele类型–表示要搜索的关键元素。

    • Comparator com –表示Comparator对象,我们将该值设置为null表示它是自然顺序或默认顺序。

返回值:

在这两种情况下,该方法的返回类型均为int,当它存在于给定列表中时,它将返回给定key_ele(key元素)的位置。

示例

//Java程序演示示例 
//的binarySearch()的类别方法

import java.util.*;

public class BinarySearchOfCollections {
    public static void main(String args[]) {
        //实例化数组列表对象
        List < Integer > arr_l = new ArrayList < Integer > ();

        //通过使用add()方法是添加
        //数组列表中的对象
        arr_l.add(20);
        arr_l.add(10);
        arr_l.add(40);
        arr_l.add(30);
        arr_l.add(50);

        //显示ArrayList-
        System.out.println("ArrayList: " + arr_l);

        //通过使用binarySearch(arr_l,30,null)方法是
        //在arr_1中搜索给定对象30-
        //基于定义的比较器对象(空)和
        //这里我们使用null,所以列表必须排序
        //升序
        int indices = Collections.binarySearch(arr_l, 30, null);

        //显示索引
        System.out.println("Collections.binarySearch(arr_l,30,null): " + indices);

        //通过使用binarySearch(arr_l,30)方法是
        //在arr_1中搜索给定对象30-
        //因此列表必须以自然或升序排序
        indices = Collections.binarySearch(arr_l, 30);

        //显示索引
        System.out.println("Collections.binarySearch(arr_l,30): " + indices);
    }
}

输出结果

ArrayList: [20, 10, 40, 30, 50]
Collections.binarySearch(arr_l,30,null): -3
Collections.binarySearch(arr_l,30): -3
 类似资料:
  • 本文向大家介绍Java toRadians ()方法与示例,包括了Java toRadians ()方法与示例的使用技巧和注意事项,需要的朋友参考一下 java.lang.Math.toRadians(double angdeg)将以度为单位的角度转换为以弧度为单位的近似等效角度。从度到弧度的转换通常是不精确的。 示例 在此,角度法是角度,以度为单位。现在让我们看一个例子- 输出结果 示例 让我们

  • 本文向大家介绍Java Random setSeed()方法与示例,包括了Java Random setSeed()方法与示例的使用技巧和注意事项,需要的朋友参考一下 Random 类法 setSeed()方法在java.util包中可用。 setSeed()方法用于设置此随机数生成器的给定种子。 setSeed()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错

  • 本文向大家介绍Java Random nextLong()方法与示例,包括了Java Random nextLong()方法与示例的使用技巧和注意事项,需要的朋友参考一下 Random 类法 nextLong()方法在java.util包中可用。 nextLong()方法用于从此随机值生成器生成下一个伪随机分布的long值。 nextLong()方法是一个非静态方法,只能通过类对象访问,如果尝试使

  • 本文向大家介绍Java Random nextInt()方法与示例,包括了Java Random nextInt()方法与示例的使用技巧和注意事项,需要的朋友参考一下 Random Class nextInt ()方法 语法: nextInt()方法在java.util包中可用。 nextInt()方法用于从此随机值生成器返回下一个伪随机值。 nextInt(int num)方法用于从此随机数生成

  • 本文向大家介绍Java Random nextGaussian()方法与示例,包括了Java Random nextGaussian()方法与示例的使用技巧和注意事项,需要的朋友参考一下 Random 类法 nextGaussian()方法在java.util包中可用。 nextGaussian()方法用于从该随机值生成器生成平均值为0.0,标准差为1.0的下一个伪随机高斯双精度值。 nextGa

  • 本文向大家介绍Java Random nextFloat()方法与示例,包括了Java Random nextFloat()方法与示例的使用技巧和注意事项,需要的朋友参考一下 Random 类法 nextFloat()方法在java.util包中可用。 nextFloat()方法用于从该随机值生成器生成介于0.0和1.0之间的下一个伪随机浮点值。 nextFloat()方法是一个非静态方法,仅可通

  • 本文向大家介绍Java Random nextDouble()方法与示例,包括了Java Random nextDouble()方法与示例的使用技巧和注意事项,需要的朋友参考一下 Random 类法 nextDouble()方法在java.util包中可用。 nextDouble()方法用于从此随机值生成器生成介于0.0和1.0之间的下一个伪随机双精度值。 nextDouble()方法是一种非静态

  • 本文向大家介绍Java Random nextBytes()方法与示例,包括了Java Random nextBytes()方法与示例的使用技巧和注意事项,需要的朋友参考一下 Random 类法 nextBytes()方法在java.util包中可用。 nextBytes()方法用于随机生成下一个字节,并将其放入给定的用户定义数组(by)中。 nextBytes()方法是一种非静态方法,只能通过类