Methods 退出非无效方法?(爪哇)
我想知道你会如何提前退出一种方法。如果这是一个void类型,我只需要执行“return”,但是由于这是一个int类型,它希望我返回一个整数。如何返回main而不返回任何整数。谢谢Methods 退出非无效方法?(爪哇),methods,exit,Methods,Exit,我想知道你会如何提前退出一种方法。如果这是一个void类型,我只需要执行“return”,但是由于这是一个int类型,它希望我返回一个整数。如何返回main而不返回任何整数。谢谢 public static int binarysearch(String[] myArray, String target, int first, int last) { int index; if (first > last) { index = -1;
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
}
在传统意义上,如果没有返回值,就无法从方法返回
您可以
返回-1
并在文档中声明-1
表示搜索失败,或者您可以抛出一个错误。但是,如果抛出异常,则需要捕获它。您可以在链接文章中了解更多信息。传统意义上,如果没有返回值,您无法从方法返回
您可以返回-1
并在文档中声明-1
表示搜索失败,或者您可以抛出一个错误。但是,如果抛出异常,则需要捕获它。您可以在链接文章中了解更多信息。有几个选项。。。。
1.打破
2.返回一个您知道不会从有效结果返回的值。例如99999999或-34
这些都是简单的选择
编辑
当然,break只会退出循环。因此,您仍然需要返回一个已知值。有几个选项。。。。
1.打破
2.返回一个您知道不会从有效结果返回的值。例如99999999或-34
这些都是简单的选择
编辑
当然,break只会退出循环。因此,您仍然需要返回一个已知值。只有两种方法可以退出此方法,要么返回整数,要么抛出异常。这是异常情况吗?也就是说,您的方法在其契约中是否有第一个必须是的?只有两种方法可以退出此方法,要么返回整数,要么抛出异常。这是异常情况吗?也就是说,您的方法是否在其契约中包含了第一个必须打破的
break代码>将不会退出该方法。它用于退出循环。True。我的意思是它可以用来跳出并返回给定的已知值。无可否认,解释得不是很好。break代码>将不会退出该方法。它用于退出循环。True。我的意思是它可以用来跳出并返回给定的已知值。诚然,解释得不是很好…除非您抛出的异常是RuntimeExceptionThat's true,但这是一个在编译时可以预期的错误,所以它不应该是RuntimeException…除非您抛出的异常是RuntimeExceptionThat's true,但这是一个在编译时可以预期的错误,所以它不应该是RuntimeException。