whrgwl
风中之心
2012-05-21 15:10

为啥不能查询负数

已采纳

我用此方法不能查询数组里面的负数
代码如下:

            import java.util.*;
          public class SearchDemo {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        //第一一个变量用来接收数组的索引
        int index = 0;
        //定义一个变量用来查询是否存在数组中
        int searchNum = 0;
        //定义一个数组
        int length = 5;
        int[] ary = new int[length];
        //循环为数组赋值
        for(int i=0; i<length; i++) {
            System.out.print("请输入第"+(i+1)+"个数:");
            ary[i] = input.nextInt();
            System.out.println();
        }
        System.out.println("**************************************");
        //用来输出输出
        Arrays.sort(ary);
        String ary1 = Arrays.toString(ary);
        Arrays.toString(ary);
        System.out.println("所有接收的数据为:"+ary1);
        System.out.print("请输入要查询的数:");
        searchNum = input.nextInt();
        index = Arrays.binarySearch(ary,searchNum);
        System.out.println(index);

            }
      }
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • chenhailong118 chenhailong118 9年前

    可以的

    [code="java"]
    import java.util.Arrays;
    import java.util.Scanner;

    /**

    • @author chenhailong
    • 下午9:32:18
      *
      /
      public class SearchDemo {
      public static void main(String[] args) {
      Scanner input = new Scanner(System.in);
      // 第一一个变量用来接收数组的索引
      int index = 0;
      // 定义一个变量用来查询是否存在数组中
      int searchNum = 0;
      // 定义一个数组
      int length = 5;
      int[] ary = new int[length];
      // 循环为数组赋值
      for (int i = 0; i < length; i++) {
      System.out.print("请输入第" + (i + 1) + "个数:");
      ary[i] = input.nextInt();
      System.out.println();
      }
      System.out.println("
      *************************************");
      // 用来输出输出
      Arrays.sort(ary);
      String ary1 = Arrays.toString(ary);
      Arrays.toString(ary);
      System.out.println("所有接收的数据为:" + ary1);
      System.out.print("请输入要查询的数:");
      searchNum = input.nextInt();
      index = Arrays.binarySearch(ary, searchNum);
      System.out.println(index);

      }
      }
      [/code]

    result:

    请输入第1个数:1

    请输入第2个数:2

    请输入第3个数:12

    请输入第4个数:-12

    请输入第5个数:-1


    所有接收的数据为:[-12, -1, 1, 2, 12]
    请输入要查询的数:-1
    1

    点赞 评论 复制链接分享

相关推荐