javaDay05

递归

  • 利用递归可以用简单的程序解决一些复杂的问题,大大地减少程序的代码量,递归的能力在于用有限的语句来定义对象的无限集合。
  • 递归包含两个部分:
    • 递归头:什么时候不调用自身方法,如果没有头,将陷入死循环。
    • 递归体:什么时候需要调用自身方法。
package com.kuang.method;

public class Demo6 {
    // 2!   2*1
    // 3!   3*2*1
    // 4!   4*3*2*1
    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);
        }
    }
}

image-20200420133204538

栈:后进先出

数组

  • 数组是相同类型的有序集合
  • 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。、
  • 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们。

数组的声明

  • 首先必须声明数组变量,才能在程序中使用数组。
dataType[] arrayRefVar;   //首选的方法
或
dataType arrayRefVar[];   //效果相同
  • java语言使用new操作符来创建数组,
dataType[] arrayRefVar = new dataType[arraySize];
  • 数组的元素是通过索引访问的,数组索引从0开始。

  • 获取数组长度:

    • arrays:length
      
package com.kuang.method;

public class Demo7 {
    public static void main(String[] args) {
        //变量的类型   变量的名字 = 变量的值;
        //数组类型
        int[] nums;   //定义
         nums = new int[10];

         nums[0] = 1;
         nums[1] = 2;
         nums[2] = 3;
         nums[3] = 4;
         nums[4] = 5;
         nums[5] = 6;
         nums[6] = 7;
         nums[7] = 8;
         nums[8] = 9;
         nums[9] = 10;

         int sum = 0;
         //读取数组长度: .length
        for (int i=0; i < nums.length;i++){
            sum  = sum + nums[i];
        }
        System.out.println(sum);
    }
}

posted @ 2020-04-20 21:43  MrSunday  阅读(106)  评论(0)    收藏  举报