2022/4/18 JavaDay10
Java方法详解
什么是方法
System.out.println().//调用out中的println 方法
java方法是语句的集合
-
方法是解决一类问题步骤的组合
-
包含于类和对象里
-
在程序中被创建,在其他地方被引用
设计原则:功能块,一个方法只做一个功能
驼峰命名规则
package com.sundada.method; public class Demo01 { public static void main(String[] args) { // test(); } //加法 public static int add(int a,int b){ return a+b; } public static void test() { for (int i = 1; i <= 5; i++) { for (int j = 5; j >= i; j--) { System.out.print( ); } for (int j = 1; j <= i; j++) { System.out.print(*); } for (int j = 1; j < i; j++) { System.out.print(*); } System.out.println(); } }} 方法的定义
用于完成特定功能的代码片段
修饰符 返回类型 方法名(参数类型 参数名) { ... 方法体 ... return 返回值; } public static int add(int a,int b){ return a+b; } 实参和形参
形参:用来定义作用
实参:实际传递的数值
方法调用
-
根据返回值来选择
-
返回一个值则会被当做一个值
int large=max(30,40); -
返回是void.则方法调用的是一条语句
System.out.println(Hello World); 值传递(java),引用传递//相当于指针
package com.sundada.method; public class Demo02 { public static void main(String[] args) { int max=max(30,40); int max1=max(10,10); System.out.println(max); System.out.println(max1); } public static int max(int num1,int num2){ int result; if ( num1==num2 ) { System.out.println(num1==num2); return 0;//表示语句提前结束 } if ( num1>num2 ) { result=num1; } else { result=num2; } return result; } } 方法可以共用,或者通过类来调用
方法重载
相同函数名,但确保形参不同的函数
方法重载规则:
-
名称必须相同
-
参数列表不同(个数不同,类型不同,排列顺序不同)
根据形参类型来调用
package com.sundada.method; public class Demo02 { public static void main(String[] args) { double max=max(30,40); System.out.println(max); } // public static int max(int num1,int num2){ // int result; // if ( num1==num2 ) // { // System.out.println(num1==num2); // return 0;//表示语句提前结束 // } // if ( num1>num2 ) // { // result=num1; // } else { // result=num2; // } // // // return result; // } public static double max(double num1,double num2){ double result; if ( num1==num2 ) { System.out.println(num1==num2); return 0;//表示语句提前结束 } if ( num1>num2 ) { result=num1; } else { result=num2; } return result; } } 命令行传参
程序在运行时传递消息,靠命令行参数给main()函数实现
package com.sundada.method; public class Demo03 { public static void main(String[] args) { for (int i = 0; i < args.length; i++) { System.out.println(args[+i+]+args[i]); } } } 通过命令行给args里面传递数据,并在main函数中打印出来