JAVA Arrays.binarySearch】的更多相关文章

转自:http://blog.csdn.net/somebodydie/article/details/8229343 package com.jaky; import java.util.*; public class Quest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String[] colors = {"blue",&qu…
在数组中查找一个元素,Arrays提供了一个方便查询的方法.Arrays.binarySearch(): 测试列子: public class MainTestArray { public static void main(String args[]){ String[] intArray = new String[]{"a","b","c","d","e","f","g&qu…
在一些时候,需要用给一个数字找到适合的区间,Arrays.binarySearch可达到这个目的. static int binarySearch(int[] a, int key)           Searches the specified array of ints for the specified value using the binary search algorithm. import java.util.Arrays; public class Test {     pub…
1.源码中可以看到,binarySearch方法调用了binarySearch0方法,binarySearch0方法才是标准的二分查找实现. 2.对于binarySearch0方法来说,注意最后的return语句return -(low + 1); // key not found.,也就是说,在没有发现要查找的key的时候,返回的是负的插入点值,所谓插入点值就是第一个比key大的元素在数组中的索引,而且这个索引是从1开始的. 例如:有数组{4,6,10,21,25,95} 分别执行下面的查询操…
首先,binarySearch方法为二分法查找,所以数组必须是有序的或者是用sort()方法排序之后的 1)  binarySearch(Object[] a, Object key) a: 要搜索的数组 key:要搜索的值 如果key在数组中,则返回搜索值的索引:否则返回-1或“-”(插入点).插入点是索引键将要插入数组的那一点,即第一个大于该键的元素的索引. 技巧: [1] 搜索值是数组元素,从0开始计数,得搜索值的索引值:[找到了] [2] 搜索值不是数组元素,且在数组范围内,从1开始计数…
Arrays.binarySearch() 的用法 1.binarySearch(Object[] a, Object key) Searches the specified array for the specified object using the binary search algorithm. 参数1:a是要查询的数组:参数2:key是要查询的关键字:返回值是key所在数组的索引值,如果没有找到就返回-1 注意:该数组必须是升序排列的 2.查看具体源代码: private stati…
1. 简介 Arrays类包含用于操作数组的各种方法(例如排序和搜索).此类还包含一个静态工厂,允许将数组视为列表. 如果指定的数组引用为null,则此类中的方法都抛出NullPointerException,除非另有说明. 2. 方法说明 List<T>  asList(T... a):返回由指定数组构成的大小固定的列表,该列表不能使用add和remove方法改变长度 int binarySearch(Object[] a, Object key):使用二分查找元素的索引 T[] copyO…
package cn.sasa.demo4; import java.util.Arrays; public class ArrayDemo { public static void main(String[] args) { int[] arr = {2,1,5,7,3,9,6}; //对数组排序 升序 Arrays.sort(arr); //Arrays.toString(arr) 将数组变成字符串 System.out.println(Arrays.toString(arr)); //Ar…
java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的. 具有以下功能: (1)给数组赋值:通过fill方法. (2)对数组排序:通过sort方法,按升序. (3)比较数组:通过equals方法比较数组中元素值是否完全相等. (4)查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作(要求原数组一定是排好序的). import java.util.Arrays; public class main { public static void ma…
概述 binarysearch为在指定数组中查找指定值得索引值,该值在范围内找得到则返回该值的索引值,找不到则返回该值的插入位置,如果该值大于指定范围最大值则返回-(maxlength+1),而: int w=Arrays.binarySearch(a,1,5,8); 查找的范围为索引值1-5,:2,3,4,5,6 8并不在此范围中,且8大于最大索引值的6,所以返回-(5+1):-6 解析 查看java源码,可以看到,binarySearch()方法是重载方法,提供了两种形参方式: 小贴士:bi…