Day03 复习+学习方法重载,可变参数,递归

今天复习了,整理学习记录

条件判断 :if...else,switch..case

循环:while,do..while,for

练习:

package base;
//for循环练习1:打印九九乘法表
public class homework {
    public static void main(String[] args) {
        for(int i=1;i<=9;i++){
            for (int j= 1; j<=i; j++) {
                System.out.print(i+"*"+j+"="+(i*j)+'\t');
            }
            System.out.println();
        }
    }
}

//for循环练习2:打印倒三角形
public class homework {
    public static void main(String[] args) {

        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();

        }

    }
}

今日学习一:Java的反编译机制:

.java文件通过编译变成class文件(字节码文件人看不懂),于是需要反编译变成人看得到的文件。

 根据路径可以找到class文件

 

扫描二维码关注公众号,回复: 14660152 查看本文章

可以得到java文件和对应的class文件

今日学习2:

1.方法重载:重载在一个类里,方法名相同,参数个数不同,参数类型不同,参数排列顺序不同,返回类型可相同可不同。

重载的可实现理论:当方法名相同时,编译器会根据调用方法的参数个数,参数类型等去逐个匹配,已选择对应方法,若匹配失败,编译器报错。

2.可变参数:在方法声明中,在指定参数类型后加一个省略号(...),一个方法只能指定一个可变参数,它必须是方法的最后一个参数,其他普通参数必须z在它之前声明

方法重载可变参数练习代码:

public class homework {
    public static void main(String[] args) {
        printMax(1,2);
        printMax(new double[]{1,2,3});
    }
    public static void printMax (int a,int b){
        int  result;
            if(a>b){
                 result=a;
            }
            else {
                result=b;
            }

        System.out.println(result);
    }
    public static void printMax (double...numbers){
        double result=numbers[0];
        for(int i=0;i<numbers.length;i++){
            if(numbers[i]>result){
                result=numbers[i];
            }
        }
        System.out.println(result);
    }
}

3.递归:自己调用自己

练习求阶层:

public class homework {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        int n=scanner.nextInt();
        System.out.println(f(n));
    }
    public static int f(int n) {

        if (n == 1) {
           return 1;
        } else {
           return n*f(n-1);

        }

    }
}

猜你喜欢

转载自blog.csdn.net/m0_67042480/article/details/128891487