方法
//System.out.println();
//类.对象.方法
设计方法原则:一个方法只完成一个功能,有利于后期拓展
方法包含一个方法头和一个方法体
按住CTRL点击方法名即可看到方法体
修饰符 返回值类型 方法名(参数类型 参数名){
...
方法体
...
}
形式参数:a,b 实际参数:1,2
public class Demo01 {
public static void main(String[] args) {
int a=3;int b=5;
System.out.println(max(a,b));
}
public static int max(int num1,int num2) {
int result = 0;
if (num1 >= num2) {
result = num1;
} else {
result = num2;
}
return result; //num1>=num2?num1:num2;
}
}
方法重载(同名不同参)
重写(Override):返回值类型和参数不变
重载(Overload):方法名相同,参数列表不同,返回值类型可相同也可不同,只有返回值类型不同不足以成为方法的重载。即外壳不变,核心重写
public class Demo01 {
public static void main(String[] args) {
System.out.println(max(10.0,20.0));
}
public static double max(double num1,double num2) {
double result = 0.0;
if (num1 >= num2) {
result = num1;
} else {
result = num2;
}
return result; //num1>=num2?num1:num2;
}
public static int max(int num1,int num2) {
int result = 0;
if (num1 >= num2) {
result = num1;
} else {
result = num2;
}
return result; //num1>=num2?num1:num2;
}
}
通过命令行传参
package Jc;
public class CommandLine {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println("args["+i+"]:"+args[i]);
}
}
}
打开cmd用javac 和 java命令传递参数
编译的时候不用回到src目录,执行的时候需要![](C:\Users\Lee\Pictures\Camera Roll\屏幕截图 2021-07-27 160418.png)
可变参数
在方法声明中,指定参数类型后加一个省略号(...)且必须是最后一个参数
package Jc;
public class Demo02 {
public static void main(String[] args) {
// 调用可变参数的方法
printMax(12,1,3,5,31.5);
printMax(new double[]{1,2,3});
}
public static void printMax(double...numbers){
if(numbers.length==0){
System.out.println("No agument passed");
return; //表示方法结束
}
double result = numbers[0];
//排序
for (int i = 1; i < numbers.length; i++) {
if(numbers[i]>result){
result=numbers[i];
}
}
System.out.println("The max value is "+result);
}
}