💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
[TOC] ## **方法调用** Java 支持两种调用方法的方式,根据方法是否返回值来选择。 当程序调用一个方法时,程序的控制权交给了被调用的方法。当被调用方法的返回语句执行或者到达方法体闭括号时候交还控制权给程序。 当方法返回一个值的时候,方法调用通常被当做一个值。 ## **案例演练:** ``` public static int fruits(int parameter1,int parameter2){ int result; if (parameter1 > parameter2){ result = parameter1; }else{ result = parameter2; } } ``` :-: ![](https://img.kancloud.cn/50/1b/501b2b7ac3be945dbcd9f94f37328aba_945x370.png) <br> ## **携带参数的方法** ``` 修饰符 返回值类型 方法名(参数列表) { //代码省略... return 结果; } ``` **修饰符:** public static 固定写法 **返回值类型:** 表示方法运行的结果的数据类型 **参数列表:** 方法在运算过程中的未知数据,调用者调用方法时传递 **return:** 将方法执行后的结果带给调用者,方法执行到 return ,整体方法运行 注意:return 结果; 这里的"结果"在开发中,我们正确的叫法成为方法的返回值 <br> ## **定义带参数方法的两个【知道】** **需求:**定义方法实现两个整数的求和计算。 * **知道返回值类型:** 方法计算的是整数的求和,结果也必然是个整数,返回值类型定义为int类型。 * **知道参数列表:** 计算哪两个整数的和,并不清楚,但可以确定是整数,参数列表可以定义两个int类型的变量,由调用者调用方法时传递 ``` public class day02_function2{ public static void main(String [] args){ int isum = sum(9,8); System.out.println("总和是:" + isum); } public static int sum(int num1,int num2){ int res = num1 + num2; return res; } } ``` 程序执行,主方法 main 调用 sum 方法,传递了实际数据 9和8 ,两个变量 num1和num2 接收到的就是实际参数,并将计算后的结果返回,主方法 main 中的变量 sum 接收的就是方法的返回值。 ### 3. 调用方法的运行图 :-: ![](https://img.kancloud.cn/b6/b6/b6b67aac3401bdc6ef47e6fd813ca01a_1175x437.png) <br> ## **三种调用方法的形式** ### 直接调用: 直接写方法名调用 ``` public class day03_fucntion3{ public static void main(String [] args){ fucn(); } public static void fucn(){ System.out.println("I was called"); } } ``` <br> <br> ### 赋值调用: 调用方法,在方法前面定义变量,接收方法返回值 ``` public class day02_function2{ public static void main(String [] args){ int isum = sum(9,8); System.out.println("总和是:" + isum); } public static int sum(int num1,int num2){ int res = num1 + num2; return res; } } ``` <br> <br> ### 输出语句调用: 在输出语句中调用方法, System.out.println(方法名()) 。 ``` public class day03_fucntion3{ public static void main(String [] args){ System.out.println(fucn(120,230)); } public static int fucn(int a,int b){ int c = a + b; System.out.println("I was called"); return c; } } ``` 不能用输出语句调用 void 类型的方法。因为方法执行后没有结果,也就打印不出任何内容。 ``` public static void main(String[] args) { System.out.println(Hello());// 错误,不能输出语句调用void类型方法 } public static void Hello() { System.out.println("Hello"); } ```