首页 > 编程语言 > 详细

java编译报错:缺少返回语句

时间:2021-03-09 22:24:28      阅读:30      评论:0      收藏:0      [点我收藏+]

编译错误

  1. 缺少返回语句

    • 编译器不负责运行程序,只负责检查语法, 编译器觉得:以下这行代码可能会执行,当然也可能不会执行。

    编译器为了确保程序不出现任何异常,所以编译器说:缺少返回语句!!

    /*
    2、编写一个方法,输出大于某个正整数n的最小的质数。
    思考:这个方法应该起什么名字,这个方法的形参是什么,方法的返回值类型是什么。
    例如:这个正整数是1, 大于它的最小质数就是3
    */
    public class FangFa{
    	public static void main(String[] args){
    		java.util.Scanner s = new java.util.Scanner(System.in);
    		int num = s.nextInt();
    		int result = prime(num);
    		System.out.println(result);
    	}// n = 1; 最小质数就是2
    	public static int prime(int n){
    		//怎样判断大于某个整数的最小质数
    		for(int i = n+1; i <= 10000; i++){// i= 2; 
    			for(int j = 2; j < i; j++){
    				if(i%j==0){
    					break; //当前这个数不是质数
    				}
    			}
    			return i; //编译报错:缺少返回语句,说明这条语句可能执行也可能不执行。--不是质数跳出循环,将合数返回了,
    			//是质数也返回,所以这里错了,应该改用while循环来写,同时return语句也不能放在for循环当中。
    		}      
    	}
    }
    
  • 编译报错:在21行,缺少返回语句,这是什么原因呢?首先这个程序是错误的,我们暂且不讨论,就单单讨论为什么缺少返回语句,导致该条报错的原因就是:说明这条语句可能执行也可能不执行。那存在这种情况吗?答案是存在的,因为for循环,当条件表达式为false的时候,return 值;这条语句就不会执行。建议:return语句不要放在for循环当中!

java编译报错:缺少返回语句

原文:https://www.cnblogs.com/Lightcode/p/14507768.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!