首页
学习
活动
专区
圈层
工具
发布

Java工具集-数学(阶乘函数)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42528266/article/details/103117110

简单工具类

写作初衷:由于日常开发经常需要用到很多工具类,经常根据需求自己写也比较麻烦 网上好了一些工具类例如commom.lang3或者hutool或者Jodd这样的开源工具,但是 发现他们之中虽然设计不错,但是如果我想要使用,就必须要引入依赖并且去维护依赖,有些 甚至会有存在版本编译不通过问题,故此想要写作一个每个类都可以作为独立工具类使用 每个使用者只需要复制该类,到任何项目当中都可以使用,所以需要尊从以下两个原则才能 做到.在此诚邀各位大佬参与.可以把各自用过的工具,整合成只依赖JDK,每个类都能够单独 使用的工具.每个人当遇到业务需求需要使用的时候,只需要到这里单独拷贝一个即可使用. 抛弃传统的需要引入依赖的烦恼.让大家一起来解决你所面临的业务问题吧!

介绍

遵从两大原则

  • 1.绝不依赖JDK以外的源码
  • 2.牺牲代码复用性,每个类都必须是单独的组件,绝不互相引用,做到完全解耦
代码示例
代码语言:javascript
代码运行次数:0
复制
package com.simple.util.math.function;

/**
 * @program: simple_tools
 * @description: 阶乘函数
 * @author: ChenWenLong
 * @create: 2019-11-15 11:47
 **/
public class FactorialFunction {

    /**
     * 功能描述:
     * 〈递归方式实现阶乘函数〉
     *
     * @params : [num]
     * @return : int
     * @author : cwl
     * @date : 2019/11/15 11:47
     */
    public static int recursion(int num){
        if(num == 1){
            return 1;
        }else if(num == 2){
            return 2;
        }else{
            return num*recursion(num-1);
        }
    }

    /**
     * 功能描述:
     * 〈非递归方法实现阶乘函数〉
     *
     * @params : [num]
     * @return : int
     * @author : cwl
     * @date : 2019/11/15 11:49
     */
    public static int unRecursion(int num){
        int jiecheng = 1;
        if(num == 0){
            return 0;
        }
        for (int i = 1; i <= num; i++) {
            jiecheng*=i;
        }
        return jiecheng;
    }
}
下一篇
举报
领券