时间:2021-05-20
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; }}声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
AppleID安全提示问题忘记了解决办法 AppleID安全提示问题忘记了解决办法 AppleID安全提示问题忘记了解决办法 AppleID安全提示问
64位linux提示gnu/stubs-32.h:Nosuchfileordirectory的解决方法这个问题是由于缺少32位兼容包,解决办法:ubuntu:s
启动Solr服务提示Java版本低无法启动,但是已经安装了Java1.8,环境变量也修改了解决办法:打开Runsolr.bat发现Java_HOME已经写死将高
nginx提示:500InternalServerError错误解决办法前言:今天发现网站无法上传资源和发布文章,通过浏览器查看服务器的返回信息500Inter
刚装的可以开发jsp的eclipse,结果写jsp的时候没有代码提示,在网上找了半天,各种解决办法都不行,后来在stackoverflow上看到一个解决办法解决