java - 使用 Arrays.sort() 和 Arrays.binarySearch() 获取存储在数组中的整数列表

标签 java arrays sorting binary-search

我想做的是,让用户输入 N 个整数,然后使用 Arrays.sort() 对整数列表进行排序,然后执行 Arrays。 binarySearch() 搜索数组中的特定整数。

我得到一些关于 Arrays.sort()Arrays.binarySearch() 的奇怪输出,即使对于在数组。

代码:

import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;
import java.util.Collection;

public class Number2 {

public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    int n=0;

    System.out.print("Enter the number of integers: ");
    n = input.nextInt();

    int[] numbers = new int[n];

    for(int i=0; i<n; i++)
    {
        System.out.print("Enter integer #"+(i+1)+": ");
        numbers[i] = input.nextInt();
    }

    Arrays.sort(numbers);

    System.out.println("After sorting: "+numbers);

    System.out.println("Enter a number to search for: ");
    int num = input.nextInt();

    int index = Arrays.binarySearch(numbers, num);

    if(index > -1)
    {
        System.out.println("The value "+num+" exist in the array");
    }

    else
    {
        System.out.println("The value "+num+" exist in the array");
    }
}

}

输出:

enter image description here

任何帮助将不胜感激。谢谢。

最佳答案

这是数组对象的toString()实现,你要找的是Arrays#toString() ,它的实现是为了实际向您显示数组中的元素。

 System.out.println("After sorting: "+ Arrays.toString(numbers));

关于java - 使用 Arrays.sort() 和 Arrays.binarySearch() 获取存储在数组中的整数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30095545/

相关文章:

c - 在sqlite的回调函数中动态重新分配2个dim数组

javascript - 按属性对对象中的列表进行分组

sorting - Yii2 添加相关属性进行排序

java - 灵活的界面设计模式

java - 按下电源按钮时,用于相机预览的 SurfaceView 不会被破坏

java - 为什么 JOOQ 仅限于整数值而不是长整数?

php - 错误 : Warning: mysql_fetch_array() expects parameter 1 to be resource, bool 值

arrays - 为什么我的 bash shell 脚本在 v 3.2.5 上运行而在 4.1.2 上运行失败?

javascript 按内部数据对数组进行排序

java - 如何使 IntelliJ 折叠变量类型?