Java方法的使用及递归
Java中的方法就相当于C语言中的函数。
public static 方法返回值 方法名称([参数类型 形参 …]){
方法体代码;
[return 返回值];
}
方法调用:
返回值变量 = 方法名称(实参…);
就比如这个例题中:
public class text1 {
public static void main(String[] args){
chazhao();
}
public static void chazhao(){
int []arr={1,1,2,2,3,4,4,5,5};
int i=0;int sum=0;
for(i=0;i<arr.length;i++){
sum=sum^arr[i];
} System.out.println(sum);
}
}
这里所定义的chazhao就是Java里的方法,然后上面的*chazhao()*就是在调用这个查找,对于方法的返回值,这可以自己来选,有的方法有返回值,有的方法没有返回值。
方法的重载:
方法重载有3点要求:
1.方法名相同;
2.方法的参数类型不同;
3.方法的返回值不影响重载。
例如:在同一个类中定义多个方法:要求不仅可以求两个整数的最大值,还可以求两个小数的最大值,以及两个小数和一个整数的大小关系
public class text7 {
public static void main(String[] args){
Max(7,6);
Max(12.5,13.5);
Max(10,9.5,10.5);
}
// public static int Max(int a,int b) {
// System.out.println(Math.max(a,b));
// return Math.max(a,b);
//
// }
public static int Max(int a,int b){
int c;
if(a>b){
c=a;
}
else{
c=b;
}System.out.println(c);
return c;
}
public static double Max(double a,double b){
double c;
if(a>b){
c=a;
}
else{
c=b;
}System.out.println(c);
return c;
}
public static double Max(int a,double b,double c){
double d;
double g;
if(b>c){
d=b;
}else{
d=c;
}
if(d<a){
g=a;
}else {
g=d;
}
System.out.println(g);
return g;
}
}
这个题就展现出了方法的重载使用。
方法的递归:一个方法在执行中调用自己本身就叫做递归。而递归就需要有一个起始条件和递推公式。
例如:递归求 N 的阶乘
public class text15 {
public static void main(String[] args) {
System.out.println(ret(6));
}
public static int ret(int n){
if(n==1){
return 1;
}
return n*ret(n-1);
}
}
递归是一种将复杂问题简单化的方法,需要慢慢去理解揣摩,有些问题需要递归方法来解决,递归在解决这些问题上就会有很好的体现。
本次分享就到这里,感谢阅读!