怎么解决Java提示缺少返回语句问题

发布时间:2021-11-19 16:51:44 作者:iii
来源:亿速云 阅读:813

这篇文章主要讲解了“怎么解决Java提示缺少返回语句问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决Java提示缺少返回语句问题”吧!

首先,以下面的程序为例,会看到在控制台有:错误:缺少返回语句的提示。

找到类中定义的方法test中发现,明明已经定义了return,软件依然会提示错误。

将return定义到for循环之外,就会发现,程序不再报错。

原因是因为数组不仅仅可以存放具体的变量值,而且可以不赋给数组任何值。

在数组内容为空的情况,程序是没有报错的,所以需要将return返回值定义到 for 循环之外即可。

关于Java中return缺少返回语句的解决方法总结如下:

Java 编译错误:缺少返回语句

import java.util.*;import java.io.*;public class tt {  public static void main(String[] args) {    foo();  }    public static String foo() {    int i=0;    while(i<10) {      return "ggg";    }  }}

该函数编译便会报错:缺少返回语句。尽管看起来(i<10)是肯定为真的,但是编译器不会把i=0带进去算,所以它觉得foo函数有可能无返回值(即while后条件为假的时候)。

同理,把while改成if,编译报同样的错误。

把while(i<10)改为while(true)后,不再报错。

但是C就随意得多,跟Java比起来以下如此不确定的代码也能正常编译运行:

#include <stdlib.h>#include <stdio.h>int main(){  int a=foo();  printf("%d\n",a);  return 0;}int foo(){  int i=0;  while(i++<10)  {    if(i>5) return 5;    else return 4;  }}

再举个java例子:

这么写会提示缺少返回语句,

public static boolean has3(int[] a) {  for(int i=0; i<a.length; ++i) {    if (a[i]==3)      return true;    else      return false;  }}

稍稍改动一下即可:

import java.util.*;import java.io.*;public class has {  public static void main(String[] args) {    int[] b = {1,2,3,4,5};    int[] c = {1,2,4,5};    System.out.println(has3(b));    System.out.println(has3(c));  }    public static boolean has3(int[] a) {    for(int i=0; i<a.length; ++i) {      if (a[i]==3)        return true;      }    return false;  }}

感谢各位的阅读,以上就是“怎么解决Java提示缺少返回语句问题”的内容了,经过本文的学习后,相信大家对怎么解决Java提示缺少返回语句问题这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. python缺少Scripts问题
  2. 怎么解决java项目中缺少包的错误

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java

上一篇:Lightning组件修改后如何解决需要刷新两次才能看到效果问题

下一篇:如何修改和编译spring-context的源码

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》