java中“如果函数有返回值类型,则不可以有带参数的return”这句话怎么理解?

求详解,最好能帮附段代码~~谢谢~~

1、return语句的作用:a、返回一个值,这个值可以是任意类型。b、使程序返回到操作系统(即终止程序)
2、java中对于一个函数,不论有没有返回值类型,都可以带有return 语句。
但是区别在于,return 语句是否可以返回一个值(这取决与该函数的返回值类型)。

a、如果函数有返回值类型(即返回值类型不为void ),则必须带有返回相应类型值的return 语句。
b、如果函数没有返回值(即返回值类型为void ),则函数中return 语句(如果存在return语句!)的后面不能加任何的变量。(该情况下的函数中也可以没有return 语句,但是如果有的话,return 只能作为返回操作系统的作用使用。)
例如:

1、有返回值
public int getAge()
{
return age; //返回int 类型的变量age的值

}
2、无返回值 //函数不带return 语句

public void putAge()
{
System.out.println(age);

}
3、返回到操作系统 //函数无返回值,但是带有return语句

public void put(int a) {

if (a > 0)
return; //return语句后不带返回值,作用是退出该程序的运行
else
System.out.println("fasfsa");
}追问

那是我这句话写错了吧?是“如果函数没有返回值类型,则不可以有带参数的return”

追答

嗯。如果函数没有返回值,它也可以有return语句,但是return语句不能带有返回值。即形式如下:
return;

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-12-11
void是无返回值的意思。

比方说 public void walk()
{
System.out.print("你好!");
}
如果别的地方调用这个方法 就会打印出 你好!

再看这里:
public String walk() //注意这里的返回类型是String不是void了
{
System.out.print("你好!");
return "哈喽"; //注意这里这个return 如果不写就会报错!
}
原因就是因为上面 的返回类型必须是String型
如果写的是void意思就是不需要返回类型。所以就没必要写return 了
如果方法上面写了某种返回类型 就必须写return后面跟 相应的类型值
第2个回答  推荐于2016-08-11

您好,提问者:
    看个例子,两个例子说明一下:

public void add(String name){
    if(name==null){
        return; //这个其实就是停止程序,往下不能再执行
    }
}

public boolean add(String name){
    if(name!=null)
        return true; //如果有返回值类型,必须定义return与返回值类型相同的
}

追问

那是我这句话写错了吧?是“如果函数没有返回值类型,则不可以有带参数的return”

追答

是的,如果是void的话 就用return;不能带参数。
如果指定类型了,就用return 指定类型(必须一致)。

本回答被提问者采纳
相似回答