我想做的是,让用户输入 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");
}
}
}
输出:
任何帮助将不胜感激。谢谢。
最佳答案
这是数组对象的toString()
实现,你要找的是Arrays#toString()
,它的实现是为了实际向您显示数组中的元素。
System.out.println("After sorting: "+ Arrays.toString(numbers));
关于java - 使用 Arrays.sort() 和 Arrays.binarySearch() 获取存储在数组中的整数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30095545/