Java递归求和1+2+3+...+n实例详解

 更新时间:2020年01月31日 11:34:09   作者:谢世林  
在本篇文章里小编给大家带来了关于Java递归求和1+2+3+...+n实例内容,需要的朋友们可以学习参考下。

Java递归求和1+2+3+...+n

public class Sum {
 
  public static int count(int n) {
 
    if (n > 1) {
      return count(n - 1) + n;
    } else {
      return n;
    }
  }
 
  public static void main(String[] args) {
    System.out.println(Sum.count(100));
  }
}

扩展学习

输入一个数:

4

10

代码:

public class Demo1 {
	public static void main(String[] args) {
		System.out.print("请输入一个数:");
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		Sum(n);
		System.out.println(Sum(n));
	}
	private static int Sum(int n) {
		if (n == 0) {
			return 0;
		}
		return Sum(n - 1) + n;
	}
}

思路:

计算前n个数的总和等于第n-1个数+n;

以上就是本次介绍的全部相关知识点,感谢大家的学习和对脚本之家的支持。

相关文章

  • 解决JAVA项目启动卡住,无任何异常信息的问题

    解决JAVA项目启动卡住,无任何异常信息的问题

    这篇文章主要介绍了解决JAVA项目启动卡住,无任何异常信息的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • ArrayList和LinkedList区别及使用场景代码解析

    ArrayList和LinkedList区别及使用场景代码解析

    这篇文章主要介绍了ArrayList和LinkedList区别及使用场景代码解析,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Java8中Stream使用的一个注意事项

    Java8中Stream使用的一个注意事项

    最近在工作中发现了对于集合操作转换的神器,java8新特性 stream,但在使用中遇到了一个非常重要的注意点,所以这篇文章主要给大家介绍了关于Java8中Stream使用过程中的一个注意事项,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-11-11
  • java高级用法之绑定CPU的线程Thread Affinity简介

    java高级用法之绑定CPU的线程Thread Affinity简介

    java线程thread affinity是用来将java代码中的线程绑定到CPU特定的核上,用来提升程序运行的性能,这篇文章主要介绍了java高级用法之绑定CPU的线程thread affinity的相关知识,需要的朋友可以参考下
    2022-05-05
  • SpringBoot应用启动过程分析

    SpringBoot应用启动过程分析

    这篇文章主要介绍了SpringBoot应用启动过程分析,需要的朋友可以参考下
    2017-08-08
  • Java用局域网实现聊天室功能

    Java用局域网实现聊天室功能

    这篇文章主要为大家详细介绍了Java用局域网实现聊天室功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • 使用Spark SQL实现读取不带表头的txt文件

    使用Spark SQL实现读取不带表头的txt文件

    这篇文章主要为大家详细介绍了如何使用Spark SQL实现读取不带表头的txt文件,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-03-03
  • Mybatis 复杂对象resultMap的使用

    Mybatis 复杂对象resultMap的使用

    这篇文章主要介绍了Mybatis 复杂对象resultMap的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • SpringBoot实现接口防刷的两种方法

    SpringBoot实现接口防刷的两种方法

    接口被刷指的是同一接口被频繁调用,可能是由于以下原因导致:恶意攻击和误操作或程序错误,本文给大家介绍了SpringBoot实现接口防刷的两种方法,并有相关的代码示例供大家参考,需要的朋友可以参考下
    2024-06-06
  • Java中Synchronized锁的使用和原理详解

    Java中Synchronized锁的使用和原理详解

    这篇文章主要介绍了Java中Synchronized锁的使用和原理详解,synchronized是 Java 内置的关键字,它提供了一种独占的加锁方式,synchronized的获取和释放锁由JVM实现,用户不需要显示的释放锁,非常方便,需要的朋友可以参考下
    2023-07-07

最新评论