Java中的方法递归与数组

一、方法递归

递归:函数自己调用自己,有一个趋近于终止的条件。需要想递归公式。

每次递归都需要开辟一块内存。

递归的应用:如求N的阶乘

public static int fac(int n){
    if(n == 1){
        return 1;
    }
    return n * fac(n-1);

递归求3的阶乘的流程如下:

 二、数组的定义和使用

1.数组的定义

数组:一组连续的空间,存放的是一组相同数据类型的数据。

数据的静态初始化:如:

int[] a = {12,2,7,4,9};

数组的动态初始化:有两种方式,如:

int[] arr1 = new int[10];
int[] arr2 = new int[]{1,2,3};

2.数组的使用

求数组的长度 数组名.length

通过[ ]按下标取数组元素使用,注意下标从0开始

使用[ ]既能读取数据,也能修改数据

当不想给数组赋值时,赋null,代表这个引用不指向任何一个对象。

打印数组内容

1.for循环打印

int[] a = {1,2,3,4,5};
for(int i = 0;i < a.length;i++){
    System.out.println(a[i]);
}

2.for each循环打印(增强for循环)

for (:) {

  语句块;

}

冒号左边是数组当中每个元素类型的变量,冒号右边是数组名

相当于把每个元素都赋值给val并打印

int[] a = {1,2,3,4,5};
for (int val: a) {
    System.out.println(val);
}

3.使用操作数组的工具类Arrays打印

这种方式会以字符串形式输出

int[] a = {1,2,3,4,5};
String ret = Arrays.toString(a);
System.out.println(ret);

Arrays的应用

Arrays是操作数组的工具类

几个常见的应用:

Arrays.sort(a);//对数组的排序
Arrays.fill(a,0,6,99);//对数组的填充,从小标0到下标6填充99
Arrays.fill(a,99);//对数组的填充,全部填充99

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值