方法是什么
- //类.对象.方法
- System.out.println.()
复制代码
- 方法的本意是功能块,包含于类或对象中,就是实现某个功能的语句块的集合(其他语言通常叫函数),在其他地方被调用。
- 设计方法的时候,最好保持方法的原子性,即一个方法只实现一个功能,这样有利于以后的功能拓展。
例:- public class Demo01 {
- public static void main(String[] args) {
- int sum = add(1,2);//调用add方法
- System.out.println(sum);
- }
-
- //定义add方法
- public static int add (int a, int b){
- return a+b;
- }
- }
复制代码 方法结构:- 修饰符 返回值类型 方法名(参数类型 参数名){
- ...
- 方法体
- ...
- return 返回值;
- }
复制代码 方法调用
- 对象名.方法名(实参列表)
- 当方法返回一个值时,方法调用通常被当做一个值,例如:
- 当方法返回值是void,方法调用是一条sout输出语句
- 一个方法中,遇到return语句便立即终止该方法
- public class Demo02 {
- public static void main(String[] args) {
- int max = max(10,20);
- System.out.println(max);
- }
- public static int max(int num1,int num2){
- int result = 0;
- if (num1 == num2){
- System.out.println("二者相等");
- return 0;//终止方法
- }
- if (num1>num2){
- result = num1;
- }else {
- result = num2;
- }
- return result;
- }
- }
复制代码 结合刚学的Scanner输入比较:- import java.util.Scanner;
- public class Demo03 {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- System.out.println("第一个数:");
- int a = scanner.nextInt();
- System.out.println("第二个数:");
- int b = scanner.nextInt();
- int max = max(a,b);
- System.out.println("最大的数为:"+max);
- scanner.close();
- }
- public static int max(int num1,int num2){
- int result = 0;
- if (num1 == num2){
- System.out.println("二者相等");
- return 0;//终止方法
- }
- if (num1>num2){
- result = num1;
- }else {
- result = num2;
- }
- return result;
- }
- }
复制代码 方法重载
- 重载就是在一个类中,有相同的方法名,但是形参不同
- 方法名必须相同
- 参数列表必须不同(或参数个数不同,或参数类型不同,或参数排列顺序不同)
- 方法的返回值类型可以相同可以不同,若仅返回值类型不同,参数相同,则不构成方法重载,会报错
- public class Demo04 {
- public static void main(String[] args) {
- int max = max(10,20);
- System.out.println(max);
- }
- public static int max(int num1,int num2){
- int result = 0;
- if (num1 == num2){
- System.out.println("二者相等");
- return 0;//终止方法
- }
- if (num1>num2){
- result = num1;
- }else {
- result = num2;
- }
- return result;
- }
- public static int max(double num1,double num2){
- int result = 0;
- if (num1 == num2){
- System.out.println("二者相等");
- return 0;//终止方法
- }
- if (num1>num2){
- result = (int) num1;
- }else {
- result = (int) num2;
- }
- return result;
- }
- public static int max(int num1,int num2,int num3){
- ...
- }
- }
复制代码 命令行传参
- 有时希望运行一个程序的时候给它传递消息,这要靠传递命令行参数给main()方法实现
可变参数
- 在方法声明中,在指定参数类型中加一个省略号
- 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数,任何普通参数必须在其之前声明
- public static int max(int... nums){}
复制代码- public static int max(int x,int... nums){}
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |