函数的四要素:函数名、输入、输出(返回)、加工。

函数分为两种:一种是有返回值得函数,一种是没有返回值的函数。

1.

定义:没有返回值的函数:(当我不需要函数的计算结果再拿出来进行运算的时候,我就不需要有返回值,直接在函数中运算完成加工即可

static void 函数名(参数){

  函数体

}

调用:调用没有返回值的函数: 函数名(实际参数);

在函数中的参数叫做虚参,我们需要给他一个实际的参数才能完成整个运算流程。

例如:我要打印一两个数字的和?

public class HS {

    public static void main(String[] args) {
        
            jisuan(3,5);  其中3,5就是实际参数赋给a,b的值(位置一定要一一对应!)
    }

    //没有返回类型的函数
    static void jisuan(int a,int b){
        int c=a+b;
        System.out.println(c);
    }
   
}                

当然参数是根据情况来定的,如果没有参数就不需要写参数:
例如:随机生成一个四位数?
public class HS {

    public static void main(String[] args) {
        suiji();
    }

    //没有返回类型的函数,随机生成四位数;
    static void suiji(){
//在外层定义空字符串来拼接整数型a;
        String s="";
//因为是输出一个四位数,所以我要循环四次每次输出一个数
        for(int i=0;i<4;i++){ 
            int a=(int)(Math.random()*100000000); //Math.random()成型的方法:调用0-1之间的所有数。这个数一定是个小数,而且            
    //对10取余那么a就是个位数                             //这个数有可能是0.00000001654甚至更多的0,所以尽量在后面乘上一个更大的数
            a=a%10;                                    //因为始终是个带小数的double型,所以要前面强制转换成int型,因为我们的目的
    //因为a是一个int类型,而我要输出一个字符串,            //就是输出一个4位的正数。
    //所以我就要在外层定义一个空字符串来拼接上a,
    //整型与字符串拼接时会自动变为字符串s=s+a;
            s+=a;                                  
        }                                          
        System.out.println(s);
    }
    

}

2.

定义:有返回值的函数:(如果需要返回一个值来参与到其他运算中,那么函数在定义时就必须有返回类型!返回类型代表的是要返回的值得类型

static 返回类型 函数名(参数){

  函数体

  return 变量;

}

调用:调用有返回值的函数:返回类型 变量=函数名(参数);

例1::我要打印两个数字的和?

public class HS {

    public static void main(String[] args) {
        int a=he(5,6);
        System.out.println(a);
    }

    //有返回值的函数;
    static int he(int a,int b){
        int c=a+b;
        return c;
    }
    
}
一:
同样是打印两个数的和,在我需要有返回值时有一下几个要点:
1.返回类型一定要与返回值的类型相统一
2.调用时先写  数据类型(返回值的类型) 变量名=函数名(参数);
这样此函数才被调用起来。

二:
对于这个返回类型,要灵活运用。举个例子,还是上面的题,如果我要输出一个String类型的字符串该怎么做?
1.首先在定义函数时返回类型就要是String;
2.return回来的值也必须是String类型
3.再调用函数时的数据类型也要是String类型
代码如下:
其却别在于:整型的运算后还是整型,如果要输出整型就不需再进行转换。
                 如果要输出字符串的话,就需要在函数体重定义一个空字符串来与结果进行拼接,在拼接的过程中整型的数值会自动转换成字符串。
public class HS {

    public static void main(String[] args) {
        String a=he(5,6);
        System.out.println(a);
    }
    
    //有返回值的函数;
    static String he(int a,int b){
        String s="";
        int c=a+b;
        s+=c;
        return s;
    }

}

例2:随机生成一个四位数?(有返回值的,因为是随机的4个数排列成的4位数字符串,所以这里的返回类型是String,而不是int。但可以使int[]数组)

public class HS {

    public static void main(String[] args) {
        String n=sj();
        System.out.println(n);

    }

    //有返回类型的函数,随机生成四位数;
    static String sj(){
        String s="";
        for(int i=0;i<4;i++){
            int a=(int)(Math.random()*10000000);
            a=a%10;
            s=s+a;
        }
        return s;
    }
    

}