1、java方法
java方法是语句的集合,他们在一起执行一个功能
方法是解决一类问题的步骤的有序组合
方法包含于类或对象中
方法在程序中被创建,在其他地方被引用
System.out.println();
//System是类,out是输出对象,println是方法
//main方法
public static void main(String[] args) {
int sum =add(1,2);
System.out.println(sum);
}
//加法
//int 是返回值类型
public static int add(int a,int b){
return a+b;
}
java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段
修饰符 返回值类型 方法名(参数类型 参数名){
方法体
return 返回值;
}
修饰符可以不写
没有返回值写void
参数类型:参数像是一个占位符。方法可以不包含任何参数
形参:在方法被调用时用于接受外界输入的数据
实参:调用方法时实际传给方法的数据
比如:
public static void main(String[] args) {
int sum =add(1,2);//实参:实际调用传递给它的参数
System.out.println(sum);
}
//加法
//形式参数:用来定义作用的
public static int add(int a,int b){
return a+b;
}
这样写会报错,return一般放在最后
public static void main(String[] args) {
int max = max(10, 10);
System.out.println(max);
}
// 比大小
public static int max(int num1,int num2){
int result = 0;
if (num1 == num2){
System.out.println("num1=num2");
return 0;//return除了返回值,还可以中止方法
}
if (num1>num2){
result = num1;
}
if (num1<num2){
result = num2;
}
return result;
}
2、方法的调用
1>.当方法返回一个值的时候,方法调用通常被当作一个值
int larger = max(30,40);
2>.如果方法返回值是void,方法调用一定是一条语句
System.out.println("hello")
3>.对象名.方法名
java是值传递
3、方法的重载
重载就是在一个类中,有相同的函数名称,但形参不同的函数
public static void main(String[] args) {
double max = max(10.0, 20.0);
System.out.println(max);
}
public static double max(double num1,double num2){
double result = 0;
if (num1 == num2){
System.out.println("num1=num2");
return 0;//return除了返回值,还可以中止方法
}
if (num1>num2){
result = num1;
}
if (num1<num2){
result = num2;
}
return result;
}
// 比大小
public static int max(int num1,int num2){
int result = 0;
if (num1 == num2){
System.out.println("num1=num2");
return 0;//return除了返回值,还可以中止方法
}
if (num1>num2){
result = num1;
}
if (num1<num2){
result = num2;
}
return result;
}
//这样即可以比较double类型,也可以比较int类型
方法重载的规则:方法名称必须相同
参数列表必须不同(个数不同或类型不同、参数排列顺序不同等)
方法的返回类型可以相同也可以不同
4、命令行传参(了解)
tmd,笔记不会写,用到再回来看吧
焯
5、可变参数(不定项参数)
JDK1.5开始,java支持传递同类型的可变参数给一个方法
在方法声明中,在指定参数类型后加一个省略号(…)
一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。普通的参数必须在他前面声明
public static void main(String[] args) {
Demo04 demo04 = new Demo04();
demo04.test(1);
}
public void test(int... i){
System.out.println(i[0]);
}
6、递归
递归就是A方法调用A方法,自己调用自己
递归结构包括两部分:递归头
递归体
//阶乘
public static void main(String[] args) {
System.out.println(f(5));
}
public static int f(int n){
if (n==1){
return 1;
}else{
return n*f(n-1);
}
}
大计算尽量不要用递归