• day10


    day10

    Break

    package structure;
    
    public class BreakDemo {
        public static void main(String[] args) {
            int i = 0;
            while (i<100){
                i++;
                System.out.println(i);
                if (i==30){
                    break;
                }
            }
            System.out.println("123");
        }
        /*
     
         */
    }
    

    break在任何循环语句的主体部分,均可用break控制循环的流程。
    break用于强行退出循环,不执行循环中的剩余语句。
    但会执行循环体外的语句

    Continue

    package structure;
    
    public class ContinueDemo {
        public static void main(String[] args) {
            int i = 0;
            while (i<100){
                i++;
                if(i%10==0){
                    System.out.println();
                    continue;
                }
                System.out.print(i);
            }
        
        }
    }
    
    

    continue 语句用在循环体中,用于终止某次循环过程,即跳过循环体中违背执行的语句,接着进行下一次是否执行循环的判定。

    方法

    package method;
    
    public class Demo01 {
        //main方法
        public static void main(String[] args) {
            //实际参数:实际调用传递的参数
            int sum = add(1, 2);
    
            System.out.println(sum);
    
            test();
        }
        
        //加法
        //形式参数:用来定义的
        public static int add(int a,int b){
            return a+b;
        }
    
        public static void test(){
            for (int i = 0; i < 1000; i++) {
                if(i % 5 == 0){
                    System.out.print(i+"	");
                }
                if (i % (5*3) == 0){//每行
                    System.out.println();
                    System.out.print("
    ");
                }
            }
        }
    }
    
    package method;
    
    public class Demo02 {
        public static void main(String[] args) {
    
            double max = max(10.0,10.0);
            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;//终止方法
            }
            if (num1>num2){
                result = num1;
            }else{
                result = num2;
            }
            return result;
        }
        public static double max(double num1,double num2){
    
            double result=0;
            if(num1==num2){
                System.out.println("num1=num2");
                return 0;//终止方法
            }
            if (num1>num2){
                result = num1;
            }else{
                result = num2;
            }
            return result;
        }
    }
    

    方法的重载:函数名相同,形式参数不同(参数类型不同,参数数量不同)则构成函数重载
    重载规则:
    方法名必须相同
    参数列表不同(个数不同或类型不同或参数列表顺序不同)
    方法的返回类型可以相同也可以不同
    仅仅返回类型不同不足以构成方法的重载

    方法名称相同时,编译器会根据调用方法的参数个数、参数类型等去逐个匹配。
    以选择对应的方法,如果匹配失败,编译器就会报错

    package method;
    
    public class Demo03 {
        public static void main(String[] args) {
            //args.length 数组长度
            for (int i = 0; i<args.length;i++)
                System.out.println("args["+i+"]:"+args[i]);
        }
    }
    /*
    Microsoft Windows [版本 10.0.18363.1139]
    (c) 2019 Microsoft Corporation。保留所有权利。
    
    D:混杂文件codeJavaSE基础语法srcmethod>javacDemo03.java
    'javacDemo03.java' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
    
    D:混杂文件codeJavaSE基础语法srcmethod>javac Demo03.java
    
    D:混杂文件codeJavaSE基础语法srcmethod>java Demo03
    错误: 找不到或无法加载主类 Demo03
    
    D:混杂文件codeJavaSE基础语法srcmethod>cd../
    
    D:混杂文件codeJavaSE基础语法src>java method.Demo03
    
    D:混杂文件codeJavaSE基础语法src>java method.Demo03 this is victory
    args[0]:this
    args[1]:is
    args[2]:victory
    
    D:混杂文件codeJavaSE基础语法src>a
     */
    
    package method;
    
    public class Demo04 {
        /*
    
         */
        public static void main(String[] args) {
    
            Demo04 demo = new Demo04();
            demo.test(1,23,33,3,2,4);
        }
        public void test(int...i){
            System.out.println(i[0]);
            System.out.println(i[1]);
            System.out.println(i[2]);
            System.out.println(i[3]);
            System.out.println(i[4]);
            System.out.println(i[5]);
        }
    
        /*
        public void method(){}
        public void method(int a,int b){}
        public void method(int a){}
        public void method(double a){}
    
         */
    }
    

    可变参数:在方法的声明中,在指定参数类型后面加一个省略号...
    一个方法中只能指定一个可变参数(不定项参数),他必须是方法的最后一个参数。
    任何普通的参数都必须在可变参数前声明

    package method;
    
    public class Demo05 {
        public static void main(String[] args) {
    
            //调用可变参数的方法
            printMax(34,3,3,4,56.3);
            printMax(new double[]{1,2,3});
        }
        public static void printMax(double...numbers){
            if (numbers.length ==0){
                System.out.println("No argument 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);
        }
    }
    

    递归

    package method;
    
    public class Demo06 {
        public static void main(String[] args) {
    
            System.out.println(f(3));
        }
    
        /*
    
         */
        //5!=5*4*3*2*1
        //1!=1
        //2!=2*f(1)
        //3!=3*f(2)
        public static int f(int n ){
    
            if (n==1){
                return 1;
            }else{
                return n*f(n-1);
            }
        }
    }
    

    递归包括两个部分:
    递归边界;什么时候不调用自身方法,如果没有边界会陷入死循环
    递归体:什么时候需要调用自身方法

    计算器作业还没写!!

    2020 11.3 21:18

  • 相关阅读:
    hiho_1081_最短路径1
    hiho_1079_离散化
    hiho_1078_线段树区间修改
    hiho_1069_最近公共祖先3
    【.netcore学习】.netcore添加到 supervisor 守护进程自启动报错
    【.NetCore学习】ubuntu16.04 搭建.net core mvc api 运行环境
    【.NetCore学习】ASP.NET Core EF Core2.0 DB First现有数据库自动生成实体Context
    【vue基础学习】vue.js开发环境搭建
    【vue学习】vue中怎么引用laydate.js日期插件
    【年终总结】个人的2017年年终总结
  • 原文地址:https://www.cnblogs.com/vae-469395/p/13922643.html
Copyright © 2020-2023  润新知