Java中的方法
用于封装一段特定的逻辑或行为
为了实现代码的复用,便于程序的维护
需要尽可能的独立
声明一个main方法:
Public static void main(String[] args){
方法体
}
其中public static 是修饰词,void是返回值类型,main是方法名
()里的是参数列表,{}里的是方法体
一般包括4种声明方式:
//无参无返回值
public static void sayHi(){
System.out.println("Hi!");
}
//有参无返回值
public static void sayHi(String name){
System.out.println("Hi! My name is " + name);
return;
}
//无参有返回值
public static double sum(){
return 5.21; //1.结束方法的执行 2.返回结果给调用者
}
//有参有返回值
public static int sum(int a, int b){
//int c = a + b;
//return c;
return a + b;
}
方法签名:方法名 + 参数列表
1)Java语法规定,同一个类中不可以有两个方法签名完全相同的方法
2) 方法的重载:同一个类的多个方法只是方法名相同而参数列表不同
编译器会自动调用合适的方法
1.同一个文件可以包含多个类
2.public修饰的类只能有一个
3.public修饰的类必须与文件名相同
我们常用的println方法就是方法的重载,根据参数的不同来调用不同的方法
public static void main(String[] agrs){
Scanner scan = new Scanner(System.in);
//验算f(45)/f(46)
System.out.print("斐波那契数的第n项,n=");
int n = scan.nextInt();
System.out.println(n);
System.out.println("第n项斐波那契数是:" + f(n));
double gold = (double)f(45)/f(46);
System.out.println("黄金比例:" + gold);
//验证数组元素的删除
int[] arr = {1, 2, 3, 4, 5};
int[] del = Delete(arr,2);
System.out.println(Arrays.toString(del));
}
//计算第n项的斐波那契数的值
//1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...
//1, 2, 3, 4, 5, 6, ..
/*
* result = 0, p = 0, n = 1
* 1, result = p + n, p = n, n = result
* 2, result = p + n, p = n, n = r
* 3, result = p + n, p = n, n = r
* 4, result = 3
* 5, result = 5
* 6, result = 8
*/
public static int f(int n){
//prime为前一值,next为后一值
int result = 0, pre = 0, next = 1;
if(n == 1){
result = 1;
}else{
for(int i = 1; i < n; i++){
result = pre + next;
pre = next;
next = result;
}
}
return result;
}