1

我想知道您将如何提前退出方法。如果这是一个 void 类型,我只会“返回”,但是由于这是一个 int 类型,它希望我返回一个整数。如何在不返回任何整数的情况下返回 main。谢谢。

public static int binarysearch(String[] myArray, String target, int first, int last)
{
    int index;

    if  (first > last)
    {
        index = -1;
        System.out.println("That is not in the array");
        // Return to main here
    }
4

2 回答 2

4

在传统意义上,您不能从没有返回值的方法返回。

您可以return -1;在您的文档中声明-1表示搜索失败,也可以抛出异常。但是,如果您抛出异常,则需要捕获它。您可以在链接的文章中阅读更多相关信息。

于 2013-08-28T22:47:45.210 回答
0

几个选项.... 1. 休息;2. 返回一个你知道不会从有效结果中返回的值。例如 99999999 或 -34

这些将是简单的选择....

编辑当然 break 只会退出循环。所以你仍然需要返回一个已知值。

于 2013-08-28T22:48:43.463 回答